Citadin Lv.7
Inscrit le : 15/03/2011 Messages : 167
| Sujet: [VX] Buzzer d'event ! Jeu 5 Jan 2012 - 10:41 | |
| Script compatible VX et VX.ACECe script est une adaptation d'un script XP de Fabien, (j'ai modifié la structure et l'ai adapté a VX et VXACE). Le gros du travail est de Fabien. - Fabien a écrit:
- Un script qui fait tressailler l'événement, buzzer comme dans les Golden Sun. Je m'en sers pour qu'il exprimer de la surprise par exemple.
Il suffit de mettre "Insérer Script" dans un event et "buzz id" en code, en remplacent id par l'id de l'évt que vous voulez. - Molok a écrit:
- Bien pour manifester un sentiment, moins expressif qu'un saut
Utilisation - Code:
-
buzz 5 fait buzzer levents 5 (utiliser 0 pour buzzer le héros) prototype: - Code:
-
buzz id, amplitude = 0.1, duration = 16, periode = 16 Il est donc possible de paramétrer l'amplitude, la durée et la période (pour la fonction sinus). Cependant, les données par défaut sont cools - Code:
-
buzz_group 1, 2, 3, 4, 5 Applique buzz aux évenements de 1 à 5. (mais sans le paramétrage des données complémentaires) InstallationAu dessus de main - Code:
-
#============================================================================= # Buzzer => Permet d'appliquer une légère transformation sur les evenements # Script par FABIEN (Factory) pour XP légèrement modifié par Molok (pour VX) #==============================================================================
#============================================================================== # ** Game_Interpreter #------------------------------------------------------------------------------ # An interpreter for executing event commands. This class is used within the # Game_Map, Game_Troop, and Game_Event classes. #============================================================================== class Game_Interpreter #-------------------------------------------------------------------------- # * Buzz event #-------------------------------------------------------------------------- def buzz id, amplitude = 0.1, duration = 16, periode = 16 event = (id == 0 ? $game_player : $game_map.events[id]) event.buzz = duration event.buzz_length = duration event.buzz_amplitude = amplitude end #-------------------------------------------------------------------------- # * Buzz events #-------------------------------------------------------------------------- def buzz_group *ids ids.each{|event|buzz(event)} end end
#============================================================================== # ** Game_Character #------------------------------------------------------------------------------ # This class deals with characters. It's used as a superclass of the # Game_Player and Game_Event classes. #============================================================================== class Game_Character #-------------------------------------------------------------------------- # * Public Instance Variables #-------------------------------------------------------------------------- attr_accessor :buzz attr_accessor :buzz_amplitude attr_accessor :buzz_length end class Sprite_Character #-------------------------------------------------------------------------- # * Alias #-------------------------------------------------------------------------- alias old_initialize initialize alias old_update update #-------------------------------------------------------------------------- # * Object initialization #-------------------------------------------------------------------------- def initialize(viewport, character = nil) old_initialize(viewport, character) self.character.buzz = 0 self.character.buzz_amplitude = 0.1 self.character.buzz_length = 16 end #-------------------------------------------------------------------------- # * compute Buzz Transformation #-------------------------------------------------------------------------- def calc_buzz self.character.buzz_amplitude*Math.sin(self.character.buzz*6.283/self.character.buzz_length) end #-------------------------------------------------------------------------- # * Frame Update #-------------------------------------------------------------------------- def update self.zoom_x = self.zoom_y = 1 old_update unless self.character.buzz== nil || self.character.buzz == 0 transformation = self.calc_buzz self.zoom_x += transformation self.zoom_y -= transformation self.character.buzz -= 1 end end end |
|
Habitant Lv.6
Age : 34 Inscrit le : 02/10/2008 Messages : 102
| Sujet: Re: [VX] Buzzer d'event ! Jeu 5 Jan 2012 - 16:16 | |
| Du Golden-Sun like tout craché, j'adore, merci du partage^^ ! |
|
Voyageur Lv.10
Age : 28 Inscrit le : 24/10/2011 Messages : 411
| Sujet: Re: [VX] Buzzer d'event ! Jeu 5 Jan 2012 - 16:45 | |
| Tu pourrais mettre un screen ? Car quelqu'un qui ne connait pas golden-sun,je va pas comprendre en quoi ca consiste. |
|
Age : 33 Inscrit le : 02/02/2010 Messages : 4692
| Sujet: Re: [VX] Buzzer d'event ! Jeu 5 Jan 2012 - 17:19 | |
| C'est pas quelque chose qui peut être screené. Le deux quote a début expliquent ce que ça fait. Si vous n'arrivez pas à visualiser, le mieux est de tester ça sur un PNJ. |
|
Age : 30 Inscrit le : 22/11/2008 Messages : 3382
| Sujet: Re: [VX] Buzzer d'event ! Jeu 5 Jan 2012 - 17:29 | |
| Ahw, vraiment sympa. Facile d'utilisation, et le rendu est vraiment propre et fun. Merci beaucoup du partage, +3 en participation!
Raymo : Oups là, on dirait que des points de participation ont été ajouté pour le même script dans les sections RGSS2 et RGSS3...
TaZ> Haha en effet, j'avais pas vu l'autre topic. Bah, on va pas jouer les lourds, profite de l'erreur Molok!
Dernière édition par TaZ le Jeu 5 Jan 2012 - 17:39, édité 1 fois |
|
Citadin Lv.7
Inscrit le : 15/03/2011 Messages : 167
| Sujet: Re: [VX] Buzzer d'event ! Jeu 5 Jan 2012 - 17:36 | |
| Merci, toi au moins tu aimable, pas comme Nusenism qui ne met RIEN ! |
|
| Sujet: Re: [VX] Buzzer d'event ! | |
| |
|