{{ $name }}
@php // Monster 3D model: monsters share models, so look up by model id // (raw.mDataSortNumber3D). TS1/TS2 have separate model sets (001_/002_), // stored per game. An interactive turntable (sprite sheet) is preferred; // a static render is the fallback. All pre-built offline (pixels only). $model3dId = $raw['mDataSortNumber3D'] ?? null; $modelImg = null; $turnUrl = null; if ($model3dId !== null && $model3dId !== '' && is_numeric($model3dId)) { $gameSlug = str_contains((string) ($game ?? ''), '2') ? 'ts2' : 'ts1'; $mid = (int) $model3dId; $imgRel = 'images/models/monsters/' . $gameSlug . '/' . $mid . '.png'; if (is_file(public_path($imgRel))) $modelImg = asset($imgRel); $turnRel = 'images/models/monsters/' . $gameSlug . '/turntable/' . $mid . '.webp'; if (is_file(public_path($turnRel))) $turnUrl = asset($turnRel); } @endphp @include('wiki.partials.model_viewer', ['turnUrl' => $turnUrl, 'modelImg' => $modelImg, 'name' => $name]){{ __('Base Details') }}
@foreach($baseRows as $row)
{{ $row['label'] }}
{{ $row['value'] }}
@endforeach
{{ __('Stats') }}
@foreach($stats as $row)
{{ $row['label'] }}
@if(!empty($row['value_html']))
{!! $row['value_html'] !!}
@else
{{ $row['value'] }}
@endif
@endforeach
{{ __('Details') }}
@foreach($detailRows as $row)
{{ $row['label'] }}
{{ $row['value'] }}
@endforeach
{{ __('Drops') }}
@foreach($dropLines as $line)
{{ $line }}
@endforeach
{{ __('Chat') }}
@foreach($chatLines as $line)
{{ $line }}
@endforeach