Whack a Hack!

Para empezar

Script de cobro

La base de la economía, también en mundo pokémon.

Script de cobro

Este script lo que hace es cobrarte una determinada cantidadde dinero, que luego ya pondrás tú cuanto es, siempre y cuando tengas esa cantidad dedinero.

Pero como soy así, os dejo el script incompleto.¿Por qué? Pues porque cada uno querrá cobrar por una determinada cosa, pondrálos scripts y los textos donde le parezca, y cobrará la cantidad que cada unoquiera, así que es lógico dejar el script como un "patrón", quepuedes completar para hacer scripts parecidos pero no iguales.

Ahora, la explicación:

· He marcado con guiones (-) los bytes que debéis completarvosotros. Por ejemplo, los offsets de los textos (6 bytes) y los bytes que indican la cantidad de dinero (2 bytes cada uno).

· Los offsets de cada script también están en blanco. Hepuesto entre corchetes ( [...] )qué script es cada uno, y he dejado el 0x porque séque si no no se lo vais a poner.Ah, yel script principal es eso, el principal, el que asignarás a la persona ogatillo que arranque el script

Lo que debería decir cada texto está marcado entre comillasal lado de los msgbox

Explico algunos comandos poniendo llaves (}) al lado.

Donde pone {NUCLEO} tenéis que escribir la parte del scriptque falta, es decir, que pasa después de pagar. Por ejemplo, si quieres que elscript trate de que le pagas a un chivato para que te diga una contraseña, puesborras {núcleo} y escribes el msgbox/message y el callstd/setbox (sonequivalentes) correspondientes. Si quieres que ocurra algo antes o algo si notienes dinero, escríbelos donde he puesto las marcas {ANTES!!!} y {DESPUES!!!}.

Es lioso, pero los que me conocen saben que yo no voy ahacer nada sencillo y fácilmente inteligible.

Recuerda, en la cantidad tienes que ponerla permutada: 100=0x64,500=0x1f4.

    Un consejo, seguid este orden:
  1. 1 Prepara el mapa con la persona a la que le vas a asignarel script.
  2. 2 Completa lo que puedas del script (las cantidades, el núcleo,etc.).
  3. 3 Escribe los textos en el espacio libre con un editorhexadecimal, uno tras otro, dejando un poco de espacio por si luego vais aagregar algo.
  4. 4 Completa el script con los offsets de los textos
  5. 5 Busca más espacio libre para los scripts, y dejando maso menos el espacio que creas suficiente para que los scripts no se monten unoscon otros.
  6. 6 Completa el script con los offsets de los scripts
  7. 7 Comprueba que funciona
  8. Hala, rapaces, a destrozar!

Patrón del script de pago

#org 0x[SCRIPT principal]
#raw 0xC7
nop             '{ANTES!!!}
msgbox 0x------ '"Hola, te voy a cobrar!!!"
callstd 0x4
#raw 0x93       '}abrela caja
nop
nop
nop
msgbox 0x------'"¿Quieres pagar por nuestrosservicios?"
callstd 0x5
compareLASTRESULT 0x1
if 0x1 jump0x[SCRIPT de cobro]
msgbox0x------ '¿No está interesado? No nos extraña..."
callstd 0x4
#raw 0x94       '}cerrarla caja
nop
#raw 0x1
#raw 0x6B
end
#org 0x[SCRIPT de cobro]
#raw 0x92      '}comprobar si llevas cierta cantidad de dinero
#raw 0x--        '| #raw 0x--        '| #raw 0x--        '}Cantidad (permutada). Por ejemplo, para €500 (0x1f4), #raw 0x--        '| (F4 en el primer byte, 01 en el2º, y en el resto 0 ) #raw 0x--        '| compare LASTRESULT 0x0 if 0x1 jump 0x[SCRIPT si no hay suficiente dinero] #raw 0x91       '}Quitar la cantidad de dinero especificada #raw 0x--        '| #raw 0x--        '| #raw 0x--        '} Cantidad(permutada). Por ejemplo, para €500 (0x1f4), #raw 0x--        '| (F4 en el primer byte, 01 en el2º, y en el resto 0 ) #raw 0x--        '| #raw 0x95 nop nop nop msgbox 0x______ '"Muchas gracias... son X€, porfavor" callstd 0x4 #raw 0xC7 #raw 0x3 #raw 0x68 #raw 0x94       '}cerrarla caja {NÚCLEO} #raw 0x6B end
#org 0x[SCRIPT si no hay suficiente dinero]
msgbox 0x______ '"¡No tienes suficiente dinero!" callstd 0x4 #raw 0x68 #raw 0x94       '}cerrarla caja nop             '{DESPUES!!!} #raw 0x1 #raw 0x6B end

Aclaraciones:

Dirección:
Offset. Seis bytes.
Flag:
Interruptor. Dos bytes
Permutar:
Losdígitos, agrupados en parejas invierten su orden: La última pareja va alprincipio, la penúltima de segunda, etc.), y en hexadecimal. Por ejemplo:

ABCDEF > EFCDAB

1234 > 3412

Para conversiones de decimal a decimal puedes usar la calculadora de Windows (inicio>ejecutar>"calc") en modocientífica (ver / científica). Pinchas en el tipo de numeración original,escribes el numero y eliges la numeración que quieres para hacer la conversión.

Manual redactado por Baro

send mail english version

Bienvenido a Whack a Hack

Novedades

  • [19-02-08] ˇAdvamce Map 1.90!
  • [12-02-08] Nuevos Tiles por Man
  • [04-02-08] Ruby Destiny en WAH
  • [03-02-08] Omega b1 Versión Ingles
  • [01-01-08] ˇShiny Gold beta 5!
  • [24-12-07] ˇPokémon Omega beta 1!
  • [12-12-07] ˇPokémon Crystal Shards beta 1!