Enviar respuesta 
 
Calificación:
  • 1 votos - 5 Media
  • 1
  • 2
  • 3
  • 4
  • 5
Script Puzzle & Mover(by IkiCapitan)
05-02-2012, 08:21 PM (Este mensaje fue modificado por última vez en: 05-02-2012 08:25 PM por iki141.)
Mensaje: #1
Star Script Puzzle & Mover(by IkiCapitan)

Bueno, este Script posiblemente lo tengan muchos pero no lo publicaron, o capas soy el único genio que lo crea jaja.

En este caso tenemos la posibilidad de mover las Piezas de un RompeCabezas y armarlo... cuando el mismo se arma se producirá un efecto, en este caso el deseado es abrir una puerta.

Dificultad: Media (Lo complejo es dibujar las animaciones del Sprite).

Lo Bueno: Todo lo que creo yo es excelente.

Lo Malo: Dibujar las animaciones es embolante, pero podes obviarlo y el script es funcional de todas formas.



Instrucciones:

1) Crear Sprites de rompecabeza, acá dejo el que uso yo en el Script bien acomodado para que funcione (recuerden que la posición es importante a menos que modifiquen el efecto resultante de los NPC cosa que es sencilla):

[Imagen: sprites1.bmp]

2) Ahora los metemos en orden como ScriptedNPC y llenamos de Bloqueo para NPC las áreas donde los usaremos. Recordar configurar los ScriptedNPC como cada número de NPC asignado y Scripted 1 o el Case deseado igual para todos... si no queres hacer todo ese embole acá tenes los NPC configurados:

Los invitados no pueden ver los enlaces. Por favor registrate AQUI para ver los enlaces.

3) Inserción de Script:


Cita:---------------------------------En ScriptedNPC---------------------------------
Case 1 'opcional elegir el Case

Call SetPlayerSprite(Index, 10)' Sprite 10 está vacío por lo que hace al jugador invisible para reproducir la animacion
Call SendPlayerData(Index)
Call PlaySound(index, "Bury.wav")' sonido de movimiento de roca

Select Case GetPlayerDir(Index)' detecta direccion del personaje y actua en base a eso


Case 0
JugadorX = GetPlayerX(Index)
JugadorY = GetPlayerY(Index)
Call SpellAnim(1,GetPlayerMap(Index), JugadorX, JugadorY - 1) 'animacion moviendose hacia arriba
Call SetTimer("call MuevePieza("& Index &")", 840) 'llama al proceso que movera la pieza luego de la animacion en el lapso indicado

Case 1
JugadorX = GetPlayerX(Index)
JugadorY = GetPlayerY(Index)
Call SpellAnim(2,GetPlayerMap(Index), JugadorX, JugadorY - 1)
Call SetTimer("call MuevePieza("& Index &")", 840)

Case 2
JugadorX = GetPlayerX(Index)
JugadorY = GetPlayerY(Index)
Call SpellAnim(3,GetPlayerMap(Index), JugadorX, JugadorY - 1)
Call SetTimer("call MuevePieza("& Index &")", 840)


Case 3
JugadorX = GetPlayerX(Index)
JugadorY = GetPlayerY(Index)
Call SpellAnim(4,GetPlayerMap(Index), JugadorX, JugadorY - 1)
Call SetTimer("call MuevePieza("& Index &")", 840)

End Select

Exit Sub

--------------------------------En ScriptedItem o donde se desee comprobar que el rompecabezas este finalizado------------------------------------------

Case 1 'Item 1 que chequea que los NPC esten en el lugar correcto para finalizar rompecabezas.
Mapa = GetPlayerMap(Index)
NPC1X = GetNpcX(Mapa, 1)
NPC1Y = GetNpcY(Mapa, 1)
NPC2X = GetNpcX(Mapa, 2)
NPC2Y = GetNpcY(Mapa, 2)
NPC3X = GetNpcX(Mapa, 3)
NPC3Y = GetNpcY(Mapa, 3)
NPC4X = GetNpcX(Mapa, 4)
NPC4Y = GetNpcY(Mapa, 4)
NPC5X = GetNpcX(Mapa, 5)
NPC5Y = GetNpcY(Mapa, 5)
NPC6X = GetNpcX(Mapa, 6)
NPC6Y = GetNpcY(Mapa, 6)
NPC7X = GetNpcX(Mapa, 7)
NPC7Y = GetNpcY(Mapa, 7)
NPC8X = GetNpcX(Mapa, 8)
NPC8Y = GetNpcY(Mapa, 8)
NPC9X = GetNpcX(Mapa, 9)
NPC9Y = GetNpcY(Mapa, 9)
NPC10X = GetNpcX(Mapa, 10)
NPC10Y = GetNpcY(Mapa, 10)
NPC11X = GetNpcX(Mapa, 11)
NPC11Y = GetNpcY(Mapa, 11)
NPC12X = GetNpcX(Mapa, 12)
NPC12Y = GetNpcY(Mapa, 12)
NPC13X = GetNpcX(Mapa, 13)
NPC13Y = GetNpcY(Mapa, 13)
NPC14X = GetNpcX(Mapa, 14)
NPC14Y = GetNpcY(Mapa, 14)
NPC15X = GetNpcX(Mapa, 15)
NPC15Y = GetNpcY(Mapa, 15)
If NPC1X = 7 AND NPC1Y = 5 Then'1
If NPC2X = 8 AND NPC2Y = 5 Then'2
If NPC3X = 9 AND NPC3Y = 5 Then'3
If NPC4X = 7 AND NPC4Y = 6 Then'4
If NPC5X = 8 AND NPC5Y = 6 Then'5
If NPC6X = 9 AND NPC6Y = 6 Then'6
If NPC7X = 10 AND NPC7Y = 6 Then'7
If NPC9X = 7 AND NPC9Y = 7 Then'8
If NPC10X = 8 AND NPC10Y = 7 Then'9
If NPC11X = 9 AND NPC11Y = 7 Then'10
If NPC12X = 10 AND NPC12Y = 7 Then'11
If NPC13X = 7 AND NPC13Y = 8 Then'12
If NPC14X = 8 AND NPC14Y = 8 Then'13
If NPC15X = 9 AND NPC15Y = 8 Then'14
Call SpellAnim(5,GetPlayerMap(Index), 12, 6)'animacion de abrir puerta una vez cumplido el rompecabezas
Call SpellAnim(5,GetPlayerMap(Index), 13, 6)
Call SetTile(GetPlayerMap(Index), 12, 6, 0, 0, 0, 2)'desarma la imagen de la puerta en teoría
Call SetTile(GetPlayerMap(Index), 13, 6, 0, 0, 0, 2)
Call SetTile(GetPlayerMap(Index), 12, 5, 0, 0, 0, 2)
Call SetTile(GetPlayerMap(Index), 13, 5, 0, 0, 0, 2)
End If'1
End If'2
End If'3
End If'4
End If'5
End If'6
End If'7
End If'8
End If'9
End If'10
End If'11
End If'12'
End If'13
End If'14
Exit Sub
----------------------------------- Al Final del Main----------------------------------

Sub MuevePieza(Index) 'mueve el rompecabezas
Sprite = 8
Call SetPlayerSprite(Index, Sprite) 'vuelve el Sprite al original que en este caso es el 8
SendPlayerData(Index)
If GetPlayerTargetNpc(Index) > 0 Then

Select Case GetPlayerDir(Index)

Case 0
NPC= GetMapNpcNumber(GetPlayerMap(Index), GetPlayerTargetNpc(Index))
NPCX = GetNpcX(GetPlayerMap(Index), NPC)
NPCY = GetNpcY(GetPlayerMap(Index), NPC)
JugadorX = GetPlayerX(Index)
JugadorY = GetPlayerY(Index)
If JugadorX = NPCX AND JugadorY = NPCY + 1 Then
Call SetMapNpcY(GetPlayerMap(Index), NPC, NPCY - 1)
Else
Call PlayerMsg(Index, "Estas muy lejos de la pieza seleccionada", WHITE)
End If

Case 1
NPC= GetMapNpcNumber(GetPlayerMap(Index), GetPlayerTargetNpc(Index))
NPCX = GetNpcX(GetPlayerMap(Index), NPC)
NPCY = GetNpcY(GetPlayerMap(Index), NPC)
JugadorX = GetPlayerX(Index)
JugadorY = GetPlayerY(Index)
If JugadorX = NPCX AND JugadorY = NPCY - 1 Then
Call SetMapNpcY(GetPlayerMap(Index), NPC, NPCY + 1)
Else
Call PlayerMsg(Index, "Estas muy lejos de la pieza seleccionada", WHITE)
End If

Case 2
NPC= GetMapNpcNumber(GetPlayerMap(Index), GetPlayerTargetNpc(Index))
NPCX = GetNpcX(GetPlayerMap(Index), NPC)
NPCY = GetNpcY(GetPlayerMap(Index), NPC)
JugadorX = GetPlayerX(Index)
JugadorY = GetPlayerY(Index)
If JugadorY = NPCY AND JugadorX = NPCX + 1 Then
Call SetMapNpcX(GetPlayerMap(Index), NPC, NPCX - 1)
Else
Call PlayerMsg(Index, "Estas muy lejos de la pieza seleccionada", WHITE)
End If


Case 3
NPC= GetMapNpcNumber(GetPlayerMap(Index), GetPlayerTargetNpc(Index))
NPCX = GetNpcX(GetPlayerMap(Index), NPC)
NPCY = GetNpcY(GetPlayerMap(Index), NPC)
JugadorX = GetPlayerX(Index)
JugadorY = GetPlayerY(Index)
If JugadorY = NPCY AND JugadorX = NPCX - 1 Then
Call SetMapNpcX(GetPlayerMap(Index), NPC, NPCX + 1)
Else
Call PlayerMsg(Index, "Estas muy lejos de la pieza seleccionada", WHITE)
End If

End Select

End If

Call SendNPC(GetPlayerMap(Index), NPC)

Call RemoveTimer("call MuevePieza("& Index &")") 'elimina el timer para que no haga un bucle eterno en tu ogt
End Sub

-----------------------------------------------------------------------------------


4) Opcional: Deben dibujar las animaciones del personaje empujando hacia las distintas direcciones; si no desean hacerlo deben simplemente borrar los Call SpellAnim en el Script. El sonido de la roca moviéndose no es de mi autoría por lo cual deberán crearlo ustedes y agregarlo en la carpeta GFX como Bury.wav o borrar esa linea del Script.

Aclaración: El Sprite no se incluye en el Script ya que no tiene nada que ver con el mismo y quizás lo use para un juego que tengo en mente.


Video:






El Script fue creado por mí, en principio para el uso del mismo en el GD de MooG! y sus juegos, de todas formas mediante esto lo hago de libre distribución y utilidad.

Aclaración 2: No me pregunten como se instala, acá está todo detallado, si tienen dudas lean tutoriales de SadScript que son ultra sencillos.

[Imagen: f33c4b9af6b5c54732734a06bd2136b7o.png]

Los invitados no pueden ver los enlaces. Por favor registrate AQUI para ver los enlaces.
Visita su sitio web Encuentra todos sus mensajes
Cita este mensaje en tu respuesta
 Agradecimiento dado por Augusto rrvc100 MalcoS judoka nickitolas kanbrelozz
05-02-2012, 08:22 PM
Mensaje: #2
RE: Script Puzzle & Mover

Esta genial iki !! muy bueno.

¿Te gustaría ganar dolares gratis? yo ya lo estoy haciendo Big Grin regsitrate dándole click a la imagen!
Los invitados no pueden ver los enlaces. Por favor registrate AQUI para ver los enlaces.
Encuentra todos sus mensajes
Cita este mensaje en tu respuesta
05-02-2012, 08:29 PM
Mensaje: #3
RE: Script Puzzle & Mover(by IkiCapitan)

Ya te dije que lo usaría, ¿no? jajajajaja
Gracias por el aporta para MooG!

Los invitados no pueden ver los enlaces. Por favor registrate AQUI para ver los enlaces.[Imagen: logonovcv.png]
Visita su sitio web Encuentra todos sus mensajes
Cita este mensaje en tu respuesta
05-02-2012, 08:51 PM
Mensaje: #4
RE: Script Puzzle & Mover(by IkiCapitan)

Wuaa!! esta genial loko!
Gracias!

Clickear a este Dragon tu debes ಠ_ಠ .....tu quieres ಠ_ಠ
Los invitados no pueden ver los enlaces. Por favor registrate AQUI para ver los enlaces.
Porfis ಥ_ಥ
Encuentra todos sus mensajes
Cita este mensaje en tu respuesta
06-02-2012, 01:30 PM
Mensaje: #5
RE: Script Puzzle & Mover(by IkiCapitan)

Muy bueno Ikki, sos un groso, pero en el video no se fue la puerta! Que tema ese, servirá esa parte?

Los invitados no pueden ver los enlaces. Por favor registrate AQUI para ver los enlaces.

Los invitados no pueden ver los enlaces. Por favor registrate AQUI para ver los enlaces.
Visita su sitio web Encuentra todos sus mensajes
Cita este mensaje en tu respuesta
06-02-2012, 04:17 PM
Mensaje: #6
RE: Script Puzzle & Mover(by IkiCapitan)

(06-02-2012 01:30 PM)Sheyk87 escribió: Los invitados no pueden ver los enlaces. Por favor registrate AQUI para ver los enlaces.Muy bueno Ikki, sos un groso, pero en el video no se fue la puerta! Que tema ese, servirá esa parte?

La puerta no se fue porque al usar el Item que chequea al rompecabezas tenía una linea de código mal; luego la corregí y subí el video... no tenía ganas de hacer otro así que lo dejé ahi... igual las coordenadas de la explosión cuando se abre la puerta hay que perfeccionarlas, pero eso queda en el efecto que quieran causar ustedes al armar el rompecabezas... las condiciones están...

[Imagen: f33c4b9af6b5c54732734a06bd2136b7o.png]

Los invitados no pueden ver los enlaces. Por favor registrate AQUI para ver los enlaces.
Visita su sitio web Encuentra todos sus mensajes
Cita este mensaje en tu respuesta
06-02-2012, 04:40 PM
Mensaje: #7
RE: Script Puzzle & Mover(by IkiCapitan)

Bueno lo revisare tal vez sirva para hacer dos cosas q hace el rpg maker, como activar algo con una roca o una palanca

[Imagen: zvx5c3.jpg]
Los invitados no pueden ver los enlaces. Por favor registrate AQUI para ver los enlaces.
Encuentra todos sus mensajes
Cita este mensaje en tu respuesta
07-02-2012, 12:34 AM
Mensaje: #8
RE: Script Puzzle & Mover(by IkiCapitan)

mmm buena idea aliand pork ers tan listo jajaja ers un buen ejemplo para la comunidad xD
Encuentra todos sus mensajes
Cita este mensaje en tu respuesta
07-02-2012, 12:42 AM
Mensaje: #9
RE: Script Puzzle & Mover(by IkiCapitan)

Si, está para mover objetos tipo mover rocas de Pokemon, entre otras cosas... esa es la idea, suerte, si necesitan algo avisen.

[Imagen: f33c4b9af6b5c54732734a06bd2136b7o.png]

Los invitados no pueden ver los enlaces. Por favor registrate AQUI para ver los enlaces.
Visita su sitio web Encuentra todos sus mensajes
Cita este mensaje en tu respuesta
07-02-2012, 02:28 AM
Mensaje: #10
RE: Script Puzzle & Mover(by IkiCapitan)

Como siempre te odio te envidio y te admiro Wink buenisimo
PD:Ya nos parecemos a los pinpinelas Wink Tongue(me engañaste me mentiste Tongue

Los invitados no pueden ver los enlaces. Por favor registrate AQUI para ver los enlaces.Los invitados no pueden ver los enlaces. Por favor registrate AQUI para ver los enlaces.
Soy: Mapper,Admin y tengo buenas ideas
Visita su sitio web Encuentra todos sus mensajes
Cita este mensaje en tu respuesta
 Agradecimiento dado por iki141
Enviar respuesta 


Posibles temas similares...
Tema: Autor Respuestas: Vistas: Último mensaje
  [Script en proceso] Mapping automático (Autotiles) oxzatanxo 6 80 Hoy 01:21 AM
Último mensaje: makone
  [Script]Invocar Monstruo Mejorado oty5198 16 2,548 19-05-2012 12:48 AM
Último mensaje: makone
  [Script] Lanzar Granadas (Animación/Exploción/Daño) oxzatanxo 11 253 18-05-2012 05:09 PM
Último mensaje: MalcoS
  [Script] Warpeo múltiple. oxzatanxo 4 97 16-05-2012 01:03 PM
Último mensaje: Sheyk87
  [Script] Patear Penales. oxzatanxo 6 122 15-05-2012 07:38 PM
Último mensaje: oxzatanxo

Salto de foro:


Usuario(s) navegando en este tema: 4 invitado(s)
ContáctanosAlterEngineVolver arribaVolver al contenidoArchivo (Modo simple)Sindicación RSS