- UID
- 15835
- 帖子
- 2025
- 主題
- 46
- 精華
- 0
- 積分
- 144
- 楓幣
- 2209
- 威望
- 125
- 存款
- 0
- 贊助金額
- 0
- 推廣
- 0
- GP
- 164
- 閱讀權限
- 100
- 性別
- 保密
- 在線時間
- 371 小時
- 註冊時間
- 2012-10-23
- 最後登入
- 2022-4-21
|
本帖最後由 kkmomo 於 2015-6-21 21:28 編輯
有空可能會更新, 看編輯時間有沒有變↗
Double請用浮點運算
fild dword ptr [addr] // 將整數轉成浮點數,並壓入 FPU stack
fld qword ptr [addr] // 將浮點數壓入 FPU stack
fst qword ptr [addr] // 從 FPU stack 讀值
fstp qword ptr [addr] // 從 FPU stack 讀值 並且 pop
指令用法只是大概寫一下,詳細用法請自行查書or Google
或是參考MS Memory裡都怎麼使用
動作 (8bit)
x: 0面向右, 1面向左
0000001x 走
0000010x 站
0000011x 跳, 掉落
0000100x 攻
0000101x 趴
0000110x 繩
0000111x 坐
0010001x 飛-移動
0010010x 飛-不動
type:
怪: 01508044, 01507F8C
人: 01508AC4, 01508A0C
NPC也有,不過我懶得找了
=== Mob ===
Base : 01827314
24 地圖中怪物數量
MobArray
[[[01827314]+28]-10]
+4] next
+14]+218]+24]+58] CS_X
+14]+218]+24]+5C] CS_Y
意示圖參考
GMS_100_Mob_Array_Structure (Diagram)
下面的其實應該不叫base ,每隻怪不同,也不知該用什麼字好
Mob struct_1
[[[01827314]+28]-10]
+4] next
+14]+214]-0C]=01508044
[base]=01508044
[[base]+38] copy dword call (esi: B8, edi: D8, ecx: 08)
[[base]+3C] 移動相關call? (ex 加速)
B8 double SS_X
C0 double SS_Y
188 int 動作
198 int 移動方向 (-1左, 0不動, 1右)
3E0 int 類型 (1走怪, 2跳怪, 3飛怪)
7E4 int SS_X
7E8 int SS_Y
(for +3C call, 這裡是動態數據)
D0 int rand
D4 const int 1E (30)
D8 int check
DC int rand
E0 int time? frame?
E4 int check
Mob struct_2
[base]=01507F8C
AC double SS_X
B4 double SS_Y
CC double SS_X
D4 double SS_Y
CharBase=01822D68
Char struct_1
[[[CharBase]+9038]-0C]=[base]=01508AC4
B8 double SS_X
C0 double SS_Y
Char struct_2
[[[CharBase]+9038]]=[base]=01508A0C
人物座標(加花段) 作用未知
01CE0075:
fstp qword ptr [eax+000000B8]
01CE088D:
fstp qword ptr [eax+000000C0]
01CDFCBB:
fld qword ptr [eax+000000B8]
01CE0203:
fld qword ptr [eax+000000B8]
01CE0354:
fld qword ptr [eax+000000C0]
01CE0A13:
fld qword ptr [eax+000000C0]
|
-
總評分: 楓幣 + 61
GP + 6
查看全部評分
|