Banner
  • Nosso banner:
    SMW Tech

Parceiros
SMW Central



Forumeiros

Conectar-se

Esqueci minha senha

Últimos assuntos
» Super Mario Kingdom 1 - The Peach Poison
6/9/2015, 00:54 por Shadow Ninja

» Yoshi Quest - The Awakening of Magic
6/9/2015, 00:30 por Shadow Ninja

» como inserir sprite diferente no luigi?
17/5/2015, 16:08 por caiquinus17

» HACK COLLAB BR - POSSIBILIDADE?
13/1/2014, 13:05 por Aeon

» Collab?
12/1/2014, 22:47 por Manuz

» O que querem de novo no fórum?
12/1/2014, 22:46 por Manuz

» Regras (WIP)
12/1/2014, 22:02 por Manuz

» Ghost House
10/1/2014, 18:33 por Mirann

» Tema do fórum?
26/12/2013, 21:07 por Koopster

Estatísticas
Temos 20 usuários registrados
O último usuário registrado atende pelo nome de caiquinus17

Os nossos membros postaram um total de 145 mensagens em 42 assuntos

Biblioteca de Subrotinas ASM

Ver o tópico anterior Ver o tópico seguinte Ir em baixo

Biblioteca de Subrotinas ASM

Mensagem por Manuz em 10/12/2013, 22:54

Esse espaço será reservado para armazenar subrotinas de ASM muito utilizadas em blocos, sprites, etc... A cada subrotina adicionada, esse post será editado contendo ela (deverá estar dentro de uma caixa de spoiler, para deixá-lo compacto).

Lista:

1) Custom Blocks:
Teleporte Simples:


Código:
LDA #$06
STA $71
STZ $89
STZ $88


Quebra de um bloco ("Shatter"):


Código:
LDA #$02
STA $9C
JSL $00BEB0
PHB
LDA #$02
PHA
PLB
LDA #$00            ; Troque para 1 para tiles coloridos.
JSL $028663
PLB


Quebra de bloco por contato com sprite:

Código:
   LDA $0A       ;\
   AND #$F0    ;| Update the position
   STA $9A       ;| of the block
   LDA $0B       ;| so it doesn't shatter
   STA $9B       ;| where the players at
   LDA $0C       ;|
   AND #$F0    ;|
   STA $98       ;|
   LDA $0D       ;|
   STA $99       ;/

   LDA #$02    ; Replace block with blank tile
   STA $9C
   JSL $00BEB0

   PHB
   LDA #$02
   PHA
   PLB
   LDA #$00    ;set to 0 for normal explosion, 1 for rainbow (throw blocks)
   JSL $028663    ;breaking effect
   PLB

2) Custom sprites
Faz o sprite explodir:

Código:
   LDA #$15
   STA $1887   ; shake the ground
   LDA #$0D      ;/
   STA $9E,x   ;\ Sprite = Bob-omb.
   LDA #$08      ;/
   STA $14C8,x   ;\ Set status for new sprite.
   JSL $07F7D2   ;/ Reset sprite tables (sprite becomes bob-omb)..
   LDA #$01      ;\ .. and flag explosion status.
   STA $1534,x   ;/
   LDA #$40      ;\ Time for explosion.
   STA $1540,x
   LDA #$09      ;\
   STA $1DFC   ;/ Sound effect.
   LDA #$1B
   STA $167A,x
   RTS


avatar
Manuz
Estrela Nova
Estrela Nova

Mensagens : 47
Pontos : 1390
Data de inscrição : 10/12/2013
Idade : 22
Localização : Deathbringer Burrow
Humor : Neutro

Voltar ao Topo Ir em baixo

Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo


 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum