Parcourir la source

Hesperiabrückenszene Script

dragonflysots il y a 6 ans
Parent
révision
07ebd6ac28
4 fichiers modifiés avec 55 ajouts et 3 suppressions
  1. 1
    1
      sots-private
  2. 13
    0
      src/include/pymap_constants.h
  3. 34
    2
      src/include/script/language.h
  4. 7
    0
      src/include/script/movement.h

+ 1
- 1
sots-private

@@ -1 +1 @@
1
-Subproject commit a98c3fe40455aa1763b8bbeda3fc81f848884789
1
+Subproject commit 7655fe67d1658b6d1ad59e80f11063fd8297da77

+ 13
- 0
src/include/pymap_constants.h Voir le fichier

@@ -43,6 +43,9 @@
43 43
 .equ FLAG_HIDE_ACHIM_LABOR, 0x506
44 44
 .equ FLAG_HIDE_RIVALE_LABOR, 0x507
45 45
 .equ FLAG_LABOR_MOVESPRITE2, 0x508
46
+.equ FLAG_HIDE_IDAN_HES_OD, 0x509
47
+.equ FLAG_HIDE_ACHIM_HES_OD, 0x50a
48
+.equ FLAG_HIDE_TUNDRA_RUEPEL_HES, 0x59b
46 49
 
47 50
 
48 51
 
@@ -135,6 +138,16 @@
135 138
 .equ VALUE_MIT_POKE_LABOR, 0x6
136 139
 .equ VALUE_RIVALKAMPF_HESPERIAPFAD, 0x7
137 140
 .equ VALUE_HESPERIA_BRUECKE, 0x8
141
+.equ VALUE_MAPSCRIPT_HESPERIAGRABEN, 0x9
142
+.equ VALUE_VOR_DEM_REBERARUNNEL, 0xa
143
+
144
+
145
+
146
+@ARM Assembly macro definitions for save_var
147
+
148
+
149
+.equ VAR_XPOS, 0x5054
150
+.equ VAR_YPOS, 0x5055
138 151
 
139 152
 
140 153
 

+ 34
- 2
src/include/script/language.h Voir le fichier

@@ -14,6 +14,10 @@
14 14
 .equ PLAYER, 0xFF
15 15
 .equ CAMERA, 0x7F
16 16
 
17
+@@Some Gender
18
+.equ GENDER_MALE, 0x0
19
+.equ GENDER_FEMALE, 0x1
20
+
17 21
 @@ Costum Specials
18 22
 .equ SP_BATCHMAPTILE, 0x7
19 23
 
@@ -85,12 +89,31 @@
85 89
 .equ EMOT_SCHOCKIERT, 0x7
86 90
 .equ EMOT_BOESESLACHEN, 0x8
87 91
 .equ EMOT_GENERVT, 0x9
88
-.equ EMOT_ERFREUT, 0xa
89 92
 
90 93
 @@@@@@@@@@@@@@@@@ Macro
91 94
 
92 95
 @@ Custom commands
93 96
 
97
+.macro callifvar callifvar_var:req callifvar_value:req callifvar_operands:req callifvar_pointer:req
98
+compare \callifvar_var \callifvar_value
99
+callif \callifvar_operands \callifvar_pointer
100
+.endm
101
+
102
+.macro gotoifvar gotoifvar_var:req gotoifvar_value:req gotoifvar_operands:req gotoifvar_pointer:req
103
+compare \gotoifvar_var \gotoifvar_value
104
+gotoif \gotoifvar_operands \gotoifvar_pointer
105
+.endm
106
+
107
+.macro callifflag callifflag_flag:req callifflag_operands:req callifflag_pointer:req
108
+checkflag \callifflag_flag
109
+callif \callifflag_operands \callifflag_pointer
110
+.endm
111
+
112
+.macro gotoifflag gotoifflag_flag:req gotoifflag_operands:req gotoifflag_pointer:req
113
+checkflag \gotoifflag_flag
114
+gotoif \gotoifflag_operands \gotoifflag_pointer
115
+.endm
116
+
94 117
 .macro camerafreeze
95 118
 special 0x113
96 119
 .endm
@@ -263,7 +286,15 @@ setvar 0x8000 0x0
263 286
         call scr_mugrival_right
264 287
     .endif
265 288
 .endif
266
-.if \mugmsg_sprite!=MUG_RIVALE
289
+.if \mugmsg_sprite==MUG_PLAYER
290
+    .if \mugmsg_facing==MUGFACE_LEFT
291
+        call scr_mugrival_player_left
292
+    .endif
293
+    .if \mugmsg_facing==MUGFACE_RIGHT
294
+        call scr_mugrival_player_right
295
+    .endif
296
+.endif
297
+.if \mugmsg_sprite!=MUG_RIVALE&&\mugmsg_sprite!=MUG_PLAYER
267 298
     .if \mugmsg_facing==MUGFACE_LEFT
268 299
         setvar MUGHSOT_1_TABLE \mugmsg_sprite|0x8000
269 300
         setvar MUGSHOT_1_X 0x16
@@ -275,6 +306,7 @@ setvar 0x8000 0x0
275 306
         setvar MUGSHOT_1_Y 0x60
276 307
     .endif
277 308
 .endif
309
+
278 310
 addvar MUGHSOT_1_TABLE \mugmsg_emot
279 311
 .if \mugmsg_callstd==5
280 312
     msgbox \mugmsg_textpointer \mugmsg_callstd

+ 7
- 0
src/include/script/movement.h Voir le fichier

@@ -100,4 +100,11 @@
100 100
 .equ APPLYMOVE_SLIDE_NO_MOVEMENT_RIGHT, 0xA3
101 101
 .equ APPLYMOVE_TELEPORT_MOVE, 0xA4
102 102
 .equ APPLYMOVE_FALLING_DOWN_MOVE, 0xA5
103
+.equ APPLYMOVE_DIAG_LEFTUP, 0xAA
104
+.equ APPLYMOVE_DIAG_RIGHTUP, 0xAB
105
+.equ APPLYMOVE_DIAG_LEFTDOWN, 0xAC
106
+.equ APPLYMOVE_DIAG_RIGHTDOWN, 0xAD
107
+
108
+
109
+
103 110
 .equ APPLYMOVE_END, 0xFE