AccueilPortailFAQRechercherCalendrierGalerieS'enregistrerStatistiquesConnexion

Partagez
 

 Tutoriel d'utilisation du script "PushFront"

Aller en bas 
AuteurMessage
Flav
Best-Admin
Best-Admin
Flav

Messages : 6046
Points : 6905 - Réputé : 9
Inscrit le : 12/02/2007
Masculin Âge : 274 Vierge

Tutoriel d'utilisation du script "PushFront" Empty
MessageSujet: Tutoriel d'utilisation du script "PushFront"   Tutoriel d'utilisation du script "PushFront" Icon_minitimeVen 1 Jan 2010 - 0:59

Tout d'abord, je tiens à remercier Jebbou qui m'a concocté ce script et qui m'a autorisé à faire un tuto dessus...
Quel est ce script ?

Le script Pushfront sert à pouvoir vérifier si le héros est à côté d'un évent.
A quoi cela sert-il ?
Cela sert à pouvoir créer des compétences comme "Déplacer un rocher" qui ne marchera que si le héros est à côté du rocher...
Et il n'y a aucune limite à votre imagination avec ce script Wink

Tout d'abord, placez ce script en dessous de "Matérials":

Code:
class Game_Map

  def activateEventPos(x, y, switchCode)

    eventsAtPos = events_xy(x, y) # Array
    if eventsAtPos.length > 0
      key = [ $game_map.map_id,eventsAtPos[0].id, switchCode]
      if $game_self_switches[key]  == false
          $game_self_switches[key] = true
          eventsAtPos[0].refresh
      end
    end
  end
 
  def  activateEventFrontChar (switchCode)
    x = $game_player.x
    y = $game_player.y
    direction = $game_player.direction

    case direction
      when 2
            y += 1
      when 4
        x -= 1
      when 6
        x+= 1
      when 8
        y -= 1
    end
    activateEventPos(x, y, switchCode)
  end

end

Tout d'abord...

Comment s'en servir ?

L'intérêt de ce script est de pouvoir forcer une action en activant l'interrupteur D, et à partir d'un évènement commun qui est en rapport avec un objet ou une compétence.

Vous aurez besoin de ce script, d'une variable et d'évènements communs qui se rattachent à des objets/compétences.

Vous devrez donc créer un évènement commun que vous rattacherez à l'objet/compétence voulu(e).
Dans cet évènement commun, vous mettrez ceci:
Cliquez sur "Insérer un script" et collez ceci:
Code:
$game_map.activateEventFrontChar("D")

Ceci sert à activer l'interrupteur D de l'évènement qui se trouve à côté du héros.

Cela créé donc un problème assez gênant si vous avez un évènement qui utilise l'interrupteur local D en condition...
Mais peu d'évènements sont assez complexes pour utiliser cet interrupteur local.

Puis vous créerez une variable.
Cette variable servira à déterminer quelle compétence ou objet est utilisé avant de forcer une action, ce qui permettra de ne pas limiter les choix.
Pour déterminer quelle compétence ou objet est utilisé, chaque évènement commun en rapport avec les deux choses précédentes aura un chiffre pour cette variable.
Soyons logique, pour le premier que vous créerez, réglez donc la variable sur 1.
( Gestion des variables, choisissez celle que vous souhaitez et réglez " =1".)

Et vu que cet évènement commun est rattaché à un objet ou une compétence, laissez "Aucun" dans la condition de déclenchement.

Voici donc un aperçu de l'évent commun "basique":

Tutoriel d'utilisation du script "PushFront" Screen11


Si je dis basique, c'est que vous pouvez rajouter des animations ou autres pour donner un meilleur effet à l'action que reproduira l'utilisation de l'objet ou de la compétence.

Ensuite...

Comment appliquer ceci sur l'évènement voulu ?

Et bien, c'est assez simple.
En première page, laissez l'évènement vide, avec bien entendu l'image que vous souhaitez.

Créez ensuite une deuxième page en condition principale Interrupteur local D activé.
Oui, car sans ceci, rien ne vous servira plus --"

Appliquez ensuite une condition dans l'évent:
Cette condition servira à distinguer par une variable quelle compétence est utilisée.

Vous avez donc remarqué que nous avons réglé la variable sur 1 avec le premier évènement commun.
Mais lorsque vous créerez de nouveaux évènements communs rattachés à d'autres objets.compétences, il faudra donc régler sur d'autres chiffres cette variable.

Si cet évènement est fait pour se dérouler uniquement si c'est votre premier objet/compétence qui est utilisé:
Restons dans la logique des choses, vous aurez réglé la variable de l'évènement commun sur 1 vu que c'est la première.

Réglez donc la condition comme ceci:

Condition:
Variable [Lenomdelavariable]: =1.


(Décochez le sinon, il ne servira à rien).

Réalisez ensuite l'action voulue.

C'est à dire que si vous souhaitez déplacer un évènement, cela ressemblera à ceci:

Page 1:

Spoiler:
 

Page 2:

Spoiler:
 

Ici, lors de l'utilisation de l'objet/compétence, vous devrez appuyer sur une des flèches directionnelles pour choisir dans quel sens se déplacera le rocher.
Voici donc l'utilité du premier type de condition, voici maintenant l'utilité du deuxième type:

Vous remarquerez qu'à chaque condition première, j'y ai ajouté une autre condition...

Effectivement, si le héros regarde à gauche et qu'il est à droite de l'évènement, sans la deuxième condition, il pourra déplacer le rocher vers la droite. En clair, le rocher viendra se déplacer sur la même case que le héros.
Non non, soyons réaliste, utilisez cette deuxième condition, qui vérifie dans quelle direction regarde le héros, et si il ne regarde pas dans cette direction, alors l'évènement peut se déclencher.

(Par exemple, si la touche droite est appuyée et que le héros regarde à gauche, alors l'évènement ne bougera pas pour éviter que celui-ci n'arrive sur le héros.)

Ce script est très utile pour les adeptes de Golden Sun (Comme moi Silence) qui utilisent des systèmes comme la Psynergie.

Vous pouvez donc aussi créer, pour donner quelques exemples, un système de creusage:

Evènement commun:

Spoiler:
 

Evènement pour creuser:

Page 1:

Spoiler:
 

Page 2:

Spoiler:
 

Voila, tout ceci est la base de l'évènement. Il marchera parfaitement comme ceci mais vous pouvez toujours ajouter des animations, ou alors faire sauter le héros, ajouter des sons,...
Je n'en ai pas mis pour vous montrer ce qui est essentiel au déroulement de l'évènement.

Quelques idées en plus

Voila, ici, je vous donnerai quelques idées d'évènements possibles à créer grâce à ce script...

Un système de remplissage (Exemples: Magie: Inonder / Objet: Bidon d'eau)

Créez donc un nouvel évènement commun, insérez le script et réglez la variable sur 3 (ou alors sur un autre chiffre si vous avez déjà un évènement commun réglé sur ce chiffre).

Créez un autre évènement qui aurait pour image un pot, un tonneau ou encore un puits vide.
Créez une deuxième page pour cet évènement avec la condition principale interrupteur local D activé et en image, mettez un tonneau, pot, puits, etc... rempli.
Vous pouvez, dans l'évènement commun, afficher une animation d'eau qui montre que l'évènement s'est rempli.
Ceci peut servir pour quelques missions comme un peuple qui meurt de soif, et grâce à votre objet "Bidon d'eau", vous pourrez les aider à survivre Very Happy

Un système de soulèvement (ça se dit soulèvement ? xD) (Exemples:Magie: Soulever/ Objet: Troisième bras)

Créez un nouvel évènement commun, et réglez la variable sur un chiffre différent de ceux déjà existants.

Créez ensuite un évènement avec l'image que vous souhaitez.
Mais restez dans la logique, ceci est un évènement que vous pourrez soulever par la magie, donc pas un éléphant --'

Vous devrez donc, dans la deuxième page de l'évènement, régler sur "Au dessus du héros" et en automatique.
Créez des conditions pour vérifier si la touche haut-bas-droite-gauche est appuyée.
Si la touche haut est appuyée, déplacez l'évènement d'un pas vers le haut et le héros de 2 pas vers le haut, puis l'évènement d'un pas vers le bas.
Cela créera donc un effet qui fera que l'objet se soulève, le héros passe en dessous et l'objet retombe à terre.

Créez ensuite les autres conditions dans la suite de la logique.
Pour vous aider, je vous montre la deuxième page de l'évènement en question:

Spoiler:
 

Voila, c'est tout pour l'instant ^^"

Lien vers la démo: megaupload.com Y8FC19EY

Bonne chance à ceux qui tenterons !


Flavii3n





»»-(¯`·.·´¯)-> Fℓα̲̅√ ιι عn <-(¯`·.·´¯)-««
Revenir en haut Aller en bas
Voir le profil de l'utilisateur https://best-all.forumactif.com
 
Tutoriel d'utilisation du script "PushFront"
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» La série des "Petifils"
» Informations pour un "petit" nouveau
» did you say " phoque" ?
» Les "Cadors" de Poitou Charentes.
» [Discussion] Combos autour des "Complots"

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
Best-All :: Making :: Tutoriels :: Tutoriels acceptés-
Sauter vers: