
Display Damage Animation Script pour RPG Maker VX Ecrit par Zeus
Script pour VX permettant d'afficher les dégâts sur les ennemis de manière simple et efficace afin d'agrémenter un peu le système de base qui n'est pas très jojo.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
| # Display Damage Animation v1.1 by Zeus81
class Scene_Battle
# Ecrivez ci-dessous les id des animations pour chaque cas possible.
# Si vous voulez une même animation peut être utilisée pour tous.
# 0 = Aucune animation
Miss_Animation = 0
Evade_Animation = 0
HP_Damage_Animation = 0
HP_Critical_Animation = 0
HP_Drain_Animation = 0
HP_Recovery_Animation = 0
MP_Damage_Animation = 0
MP_Drain_Animation = 0
MP_Recovery_Animation = 0
alias zeus_display_damage_animation display_damage
def display_damage(target, obj = nil)
target.animation_id = if target.missed or target.evaded
if target.missed and obj and !obj.physical_attack; 0
elsif target.missed; Miss_Animation
elsif target.evaded; Evade_Animation
end
elsif obj and obj.damage_to_mp
damages = target.mp_damage.abs.to_s
if target.dead? or target.mp_damage == 0; 0
elsif target.absorbed ; MP_Drain_Animation
elsif target.mp_damage < 0; MP_Recovery_Animation
else MP_Damage_Animation
end
else
damages = target.hp_damage.abs.to_s
if obj and obj.base_damage == 0; 0
elsif target.absorbed ; HP_Drain_Animation
elsif target.hp_damage < 0; HP_Recovery_Animation
elsif target.critical ; HP_Critical_Animation
else HP_Damage_Animation
end
end
if target.animation_id > 0
animation = $data_animations[target.animation_id]
bmp = Cache.animation(animation.animation2_name, animation.animation2_hue)
bmp.clear_rect(0, 0, 192, 192)
if damages
x = (192-damages.size*(w=(bmp.width-576)/10))/2
damages.size.times do |i|
bmp.blt(x+i*w, 0, bmp, Rect.new(576+damages[i,1].to_i*w,0,w,192))
end
else bmp.blt(0, 0, bmp, Rect.new(target.missed ? 192 : 384,0,192,192))
end
end
zeus_display_damage_animation(target, obj)
end
end |
Ce script marche au moyen d'animations, vous créez des animations classiques et le nombre de dégâts remplacera automatiquement l'image de votre animation.
Il suffit d'utiliser ce template :
Sur le premier carreau vous écrivez ce que vous voulez, en fait ce carreau sert juste à faire l'animation, pour ne pas travailler avec un carreau vide.
Le deuxième carreau c'est ce qui s'affichera en cas de raté.
Le troisième c'est si l'ennemi esquive (oui c'est différent).
Et ensuite c'est les nombres pour l'affichage des dégâts, là je leur ai mis une largeur de 32 mais on peut le modifier, l'important c'est que tous les chiffres aient la même largeur.
Exemple d'un template plus fin :
(Et il ne faut pas qu'il y ait d'espace vide sur la droite, la taille de l'image doit s'ajuster exactement à son template !)
Il faut créer l'animation en mettant ce fichier spécial en Animation 2 :
(Il est possible d'utiliser l'Animation 1 pour mettre une bulle derrière les dégâts par exemple.)
On fait l'animation de dégâts avec la case Test, on peut mettre des rotations, zooms, etc.., et ensuite le script se chargera de remplacer cette image par le nombre de dégâts.
Exemple :
(Ne pas oublier de mettre le type de transparence en Normal.)
Enfin il faut mettre l'id de l'animation au début du script.
Démo
Si vous avez des questions, envoyez les par MP à olivieruchiwa.
|
|
sriden - posté le 14/04/2011 à 19:39:35. (14844 messages postés)
|

| lol le bide C'est génial !§ 
|
Forum du FAMAS | Vader Ou La Fin des Moussons | Vidéo | My album : Diaphanous Horizons ౡ |
|
NanakyTim - posté le 14/04/2011 à 19:54:40. (15534 messages postés)
|

Votez SIDA ! :F | Tiens tiens, Zeus qui fait des scripts pour VX
C'est sympa, ça peut toujours servir. GG ! |
Dimens Reis... Allez y faire un tour. Rangez votre chambre ! Avez-vous peur du noir ? | Fan de blacknazi |
|
samu10400 - posté le 19/04/2011 à 09:00:39. (452 messages postés)
|

Manque cruel d'inspiration. | Génial! Ça marche en plus! |
††BORN†THIS†WAY†† |
|
tfkmaster - posté le 25/04/2011 à 10:02:39. (236 messages postés)
|

S.T.A.L.K.E.R for the life | Vraiment cool comme script ^^ GG Zeus \o/
samu10400 a dit:
Génial! Ça marche en plus!
|
Génralement quand on fait un script c'est pas pour faire planter RM (quoi que ) |
|
LordDos - posté le 30/05/2011 à 12:33:42. (6 messages postés)
|
| Bonjour à tous.
Voilà j'ai installé se script au dessus de "main process" et depuis
j'ai un bug le srcipt "cache" ligne 75 "path = folder_name + filename"
Malgré que j'ai supprimé le srcipt de zeus le bug dans le script
"cache" persiste et je ne peu donc plus démrer de combat
Message d'erreur
"Script 'cache' line 75: TypeError occured.
cannot convert nil into string"
je cherche depuis un petit moment et je n'ai pas envi de devoir
recommencer tout mon projet à 0......   8 mois de boulot pour un débutant c'est pas rien quand même !!!
Merci d'avance pour toutes les réponses fournies. |
|
bigraph - posté le 30/05/2011 à 17:53:39. (448 messages postés)
|

Hum... | LordDos=> Floodeur? Tu as déja fais un toic dessus! |
Non, rien. | Na. | "Le suicide me semble très attirant en ce moment... Et si on suicidait pokéfan ?" : je suis fan officiel du docteur 8-) | J'ai été ban... Pour une connerie de dispute... M'aprendra à être con, tiens. | D'ailleur, en parlant du ban: ça fait un mois jour pour jour aujourd'hui! Et je suis toujours pas déban! WTF? |
|
Benji_Crazy - posté le 15/07/2011 à 18:25:56. (9 messages postés)
|

| ces tu posible que se ne soi pas une animation qu'on fait psk je suis pas tres bon ^^ |
Ahirion |
|
vinvin - posté le 04/01/2012 à 12:28:56. (1 messages postés)
|
| Bonjour, je me suis inscrit exprès pour pouvoir te signaler que ton script marche, que cela est très utile MAIS .... Que les dégâts s'affichent à l'envers pour les personnages possédant deux armes, en attendant une astuce ou une modification du script, à bientôt et merci pour ton travail. | 
|