Добавление нового монитора в Sonic 2 SMS — различия между версиями
Speed TH (обсуждение | вклад) (Новая страница: «{{GuideBy|Ravenfreak}} Итак, вы хотели бы добавить новый монитор в Sonic 2 SMS, но не знаете как? Для н...») |
Speed TH (обсуждение | вклад) |
||
Строка 1: | Строка 1: | ||
{{GuideBy|[[Ravenfreak]]}} | {{GuideBy|[[Ravenfreak]]}} | ||
− | + | Возможно некоторые из вас, когда-нибудь играя в [[Sonic 2 SMS]] хотели бы добавить новые мониторы со способностями, чтобы насладиться еще более эффектной игрой, но вы не знаете как это сделать? Это очень просто. | |
− | Для начала, откройте '''s2.asm''' в блокноте и найдите строчку '''collision_monitor''', | + | Для начала, откройте '''s2.asm''' в блокноте, и найдите строчку '''collision_monitor''', а там вы увидите это: |
<asm>Collision_Monitor: | <asm>Collision_Monitor: | ||
Строка 37: | Строка 37: | ||
ret</asm> | ret</asm> | ||
− | Вы можете | + | Вы можете переименовать лейбел '''New_Monitor''' как хотите, хР. |
Теперь надо добавить код монитора. Прежде чем добавить код, вы можете использовать Монитор со знаком вопроса, для этого добавьте это: | Теперь надо добавить код монитора. Прежде чем добавить код, вы можете использовать Монитор со знаком вопроса, для этого добавьте это: | ||
Версия 11:53, 11 ноября 2011
Возможно некоторые из вас, когда-нибудь играя в Sonic 2 SMS хотели бы добавить новые мониторы со способностями, чтобы насладиться еще более эффектной игрой, но вы не знаете как это сделать? Это очень просто. Для начала, откройте s2.asm в блокноте, и найдите строчку collision_monitor, а там вы увидите это:
<asm>Collision_Monitor: LABEL_47F6: ;collision with monitor ld hl, $D39D ld a, (hl) bit 0, a jr nz, Collision_Monitor_Rings bit 1, a jr nz, Collision_Monitor_Life bit 4, a jr nz, Collision_Monitor_Continue bit 5, a jr nz, LABEL_4845 bit 2, a jr nz, Collision_Monitor_Sneakers bit 3, a jr nz, Collision_Monitor_Invincibility bit 6, a jr nz, LABEL_4884 ret</asm>
Это типы мониторов, используемые в игре. Теперь прокрутите ниже, и вы увидете это:
<asm> LABEL_4845: res 5, (hl) ret</asm>
Это один из двух мониторов, которые доступны для использования. Теперь вам наверное захочеться добавить код нового монитора после операнда res, но если это сделать, то игра зависнет. Чтобы этого избежать, вам нужна страница в банке, содержащая мониторы, банк – 07. Поэтому после res добавьте:
<asm>ld a, :Bank07
ld ($FFFF),a Call New_Monitor ret</asm>
Вы можете переименовать лейбел New_Monitor как хотите, хР. Теперь надо добавить код монитора. Прежде чем добавить код, вы можете использовать Монитор со знаком вопроса, для этого добавьте это:
<asm> New_Monitor:
ld a, ($D39D) cp $07 ret z ;your code goes here</asm>
Вот и все. Не забудьте только добавить этот монитор на какой-нибудь уровень и испытать его.