1f800180

From Final Fantasy Hacktics Wiki
Jump to navigation Jump to search
Scratch Pad 0x1f800180 - Pointer at BATTLE.BIN 0x8018f4e4
Used while spreading Acting unit move to set reachable tiles. Each time a tile is reached it becomes an origin for spreading next move.
Start at acting Unit move +1 (because it ends at 1).
----------------------------------------------------------
0x00 Word : Origin Tile pointer                                            00174b8c
0x04 Word : Destination data pointer (8018f8cc)                            00175958
0x08 Word : Origin Targetable grid pointer                                 00174b8c 
0x0c Word : Destination Grid pointer                                       00175958
0x10 Word : Pointer to Tile 80192dd8 center of Spread                      0017567c Tile Path
            Pointer to Unit's 801937d8 data  (ID from Tile's Grid 0x02)    0017567c Unit Path
       
0x18 - Initialized                                                         00174e84
       + 1 each reachable  Tile ? (+ flag 0x20 on Tile 0x5)                00175288
0x1a - HalfW : Origin Tile ID                                              00174b8c
0x1c - HalfW : Destination TIle ID                                         00175958
0x1e - HaflW : Tile ID (from 0x1a) - For Grid                              0017567c Tile Path
               Unit ID + 0x200 - For post Grid                             0017567c Unit Path 

0x22 - Origin AoE - 1 (- Preset value)                                     00175958
     - Updated while spreading                                             00175958
0x24 - AoE of move - Counter  (while spreading horizontal jump)            001764d8
0x26 - HalfW : X counter  (used as coordinates)                            00174b8c
0x28 - HalfW : Y counter                                                   00174b8c
0x2a - HalfW : Elevation counter                                           00174b8c
0x2c - HalfW : Elevation offset (0 or 0x100)                               00174b8c
0x2e - HalfW : Y*MaxX + Elevation offset                                   00174b8c
0x30 - HalfW : Destination X                                               001755e8
     - HalfW : Dynamic destination X (Jump loop)                           001764d8
0x32 - HalfW : Destination Y                                               001755e8
     - HalfW : Dynamic destination Y (Jump loop)                           001764d8
0x34 - Elevation Flag (0 1 0 1 while looping)                              00175958
0x36 - Delta Height (Exit Side - Opposite Side)                            0017567c Tile Path
     - Unit Height + Size                                                  0017567c Unit Path
0x38 - Half : Destination side height difference (Opposite - Entry)        00175958
0x3a - Spreading Tile X Direction                                          00175ea0 (Spreading Jal)
0x3c - Spreading Tile Y Direction                                          00175ea0 (Spreading Jal)
0x40 - 0 = Check Tile Path                                                 00175ea0
       1 = Check Unit Path (when moving above units)                       00175ea0
0x41 - Unit ID/Counter - From Targetable grid 0x02                         0017567c Unit Path
0x42 - Path flag (Tile/Above Unit)                                         00175958
0x43 - Unit ID (from Grid 0x02) on destination Tile                        00175958
0x44 - Origin Exit Side slope Mod (Pathfinding)                            00175ea0 (Spreading Jal)
       Used to set Destination opposite side height too
0x45 - Destination Entry Side Slope Mod (Pathfinding)                      00175ea0 (Spreading Jal)
       Used to set Origin opposite side height too
0x46 - Origin Ceiling Height (distance from desired height ?)              0017567c
0x47 - Destination Ceiling distance                                        00175958 
0x48 - Exit side Height                                                    0017567c Tile Path
     - Unit Height + Size                                                  0017567c Unit Path
0x49 - Origin Opposite Side Height                                         0017567c Tile Path
     - Orign Unit Height + Size                                            0017567c Unit Path
0x4a - Destination Entry Side Height                                       00175958 Tile Path
     - Present Unit Height + Size - 1                                      00155958 Unit Path
0x4b - Destination opposite side Height                                    00175958
0x4c - Origin Tile's Height*2                                              00175ea0
0x4d - Destination Height*2                                                00175958
0x50 - Grid or Post Grid 0x04  (Vertical drop)                             00175958
     - Destination Height*2                                                0017622c
     - ID of Unit on Tile                                                  0017622c
0x51 - Destination Halves                                                  0017622c
0x52 - Destination Slope Type                                              0017622c
0x53 - Acting Unit Size                                                    0017622c
0x54 - Used as loop limit in 00175ea0
     - 0x08 Default                                                        00174e84
     - 0x24 if Acting Unit Stop riding                                     00174e84
     - 0x08 After dealing with Tile of interest                            00174b8c
     Set back to 0x08 after 175ea0 and 1764d8                              00174b8c
0x55 - 0x04 if PV = 1                                                      00174e84
       Used As loop limit                                                  00175ea0
0x56 - Origin Tile's halves                                                00175ea0
0x57 - Destination Halves                                                  00175958
0x58 - Origin Tile's Slope Type                                            00175ea0
0x59 - Destination slope type                                              00175958
0x62 - Acting Unit Move +1                                                 00174e84 PV1
     - Decrease while Movement is spreaded (0x22)
    (keep higher value while spreading on tile with higher move cost)      00175958
       If Valid, get in loop and immediately set to 0x00  ??
0x64 - Height difference between origin and destination (always positive)  00175958 
     - Becomes Origin Grid 0x04 if Grid 0x04 > Delta height                00175958 
     - 0x00 if Unit is flying                                              00175958