Day.png);">
Apprendre


Vous êtes
nouveau sur
Oniromancie?

Visite guidée
du site


Découvrir
RPG Maker

RM 95
RM 2000/2003
RM XP
RM VX/VX Ace
RM MV/MZ

Apprendre
RPG Maker

Tutoriels
Guides
Making-of

Dans le
Forum

Section Entraide

Sorties: Dread Mac Farlane - episode 8 / Sorties: Dread Mac Farlane - episode 7 / Jeux: Ce qui vit Dessous / News: Quoi de neuf sur Oniromancie (...) / Sorties: Dread Mac Farlane - episode 6 / Chat

Bienvenue
visiteur !




publicité RPG Maker!

Statistiques

Liste des
membres


Contact

Mentions légales

347 connectés actuellement

29367454 visiteurs
depuis l'ouverture

1003897 visiteurs
aujourd'hui



Barre de séparation

Partenaires

Indiexpo

Akademiya RPG Maker

Blog Alioune Fall

Fairy Tail Constellations

Hellsoft

Offgame

Tashiroworld

Guelnika & E-magination

Planète Glutko

Tous nos partenaires

Devenir
partenaire



Counterattack State

Permet de créer un état qui offre la possibilité de riposter (contre attaquer) à chaque fois que le personnage reçoit des dégâts physiques.

Script pour RPG Maker VX
Ecrit par Shanghai
Publié par cari974 (lui envoyer un message privé)
Signaler un script cassé

❤ 0

Auteur : Shanghai
Logiciel : RPG Maker VX
Nombre de scripts : 1

Fonctionnalités
Permet de créer un état qui offre la possibilité de riposter à chaque fois que le personnage reçoit des dégâts physiques.

Installation
A placer au-dessus de Main.

Utilisation
Pour créer un état qui permet au joueur de riposter, il suffit de placer ce code dans les commentaires de celle-ci :

Portion de code : Tout sélectionner

1
<counterattack>



Script:

Portion de code : Tout sélectionner

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
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
#===============================================================================
#
# Shanghai Simple Script - Counterattack State
# Last Date Updated: 2010.05.02
# Level: Normal
#
# For a simple counterattack script with nothing fancy like skill counters,
# this script will have battlers retaliate if they're alive and have a state
# with the counterattack property. Compatibility with Battle Engine Melody.
#===============================================================================
# Instructions
# -----------------------------------------------------------------------------
# To install this script, open up your script editor and copy/paste this script
# to an open slot below ▼ Materials but above ▼ Main. Remember to save.
#
# <counterattack>
# Just put this into your state's notebox and it will create a counterattack
# when the battler takes damage. Cannot counterattack other counterattacks.
#===============================================================================
 
$imported = {} if $imported == nil
$imported["CounterattackState"] = true
 
#==============================================================================
# RPG::State
#==============================================================================
 
class RPG::State
  #--------------------------------------------------------------------------
  # counterattack
  #--------------------------------------------------------------------------
  def counterattack
    return @counterattack if @counterattack != nil
    @counterattack = false
    self.note.split(/[\r\n]+/).each { |line|
      case line
      when /<(?:COUNTERATTACK|counter attack)>/i
        @counterattack = true
      end
    }
    return @counterattack
  end
end
 
#==============================================================================
# ** Game_Battler
#==============================================================================
 
class Game_Battler
  attr_accessor :action
  attr_accessor :counterattack
  #--------------------------------------------------------------------------
  # * Damage Reflection
  #--------------------------------------------------------------------------
  alias execute_damage_sss_counterattack execute_damage unless $@
  def execute_damage(user)
    execute_damage_sss_counterattack(user)
    create_counterattack if @hp_damage > 0
  end
  #--------------------------------------------------------------------------
  # * create_counterattack
  #--------------------------------------------------------------------------
  def create_counterattack
    return if !$scene.is_a?(Scene_Battle)
    return if !exist?
    return if $scene.active_battler.actor? == self.actor?
    for state in states
      next if !state.counterattack
      @counterattack = true
      break
    end
  end
end
 
#==============================================================================
# ** Scene_Battle
#==============================================================================
 
class Scene_Battle < Scene_Base
  attr_accessor :active_battler
  #--------------------------------------------------------------------------
  # * Execute Battle Actions
  #--------------------------------------------------------------------------
  alias execute_action_sss_counterattack execute_action unless $@
  def execute_action
    execute_action_sss_counterattack
    process_counterattack if !@process_counterattack
  end
  #--------------------------------------------------------------------------
  # * process_counterattack
  #--------------------------------------------------------------------------
  def process_counterattack
    @process_counterattack = true
    for member in ($game_party.existing_members + $game_troop.existing_members)
      break if !@active_battler.exist?
      next if member == nil
      next if !member.counterattack
      last_action = member.action.clone
      last_battler = @active_battler
      member.action.set_attack
      member.action.target_index = @active_battler.index
      @active_battler = member
      inside_performed_actors = false
      if @performed_actors != nil
        inside_performed_actors = true if @performed_actors.include?(member)
      end
      @message_window.clear
      execute_action
      if @performed_actors != nil and !inside_performed_actors
        @performed_actors.delete(@active_battler)
      end
      @active_battler = last_battler
      member.action = last_action
      member.counterattack = nil
    end
    @process_counterattack = false
  end
end
 
#===============================================================================
#
# END OF FILE
#
#===============================================================================






linkdeboulogne - posté le 20/06/2013 à 13:40:48 (112 messages postés)

❤ 0

En mode Rpg

Bonjour, le script marche mais y'a t'il un moyen pour régler un pourcentage de chance de contre attaquer ? Car là, ça contre attaque tout le temps. Et si possible, auriez vous une solution pour faire en sorte qu'une attaque en aspire une et la renvoie 2X plus puissante ? Genre voile miroir dans Pokémon mais sans se prendre de dégât, merci !!

https://www.facebook.com/pages/Zelda-France/107971829261640?ref=hl


cari974 - posté le 08/08/2013 à 09:48:06 (38 messages postés)

❤ 0

Excusez-moi pour ma réponse tardive mais mon PC était en panne.
Alors, voici quelque explication sur ce script.
Pour l’installer, il faut d'abord copier/coller le script puis, créer un nouvel état avec comme note <counterattack>.
Si tu ne veux pas que le héros contre-attaque à chaque tour, tu as qu'à dire à l'état de duré qu'un seul tour par exemple. Ou alors, tu peux aussi ne pas mettre l'état contre-attaque dans chacune de tes compétences. Le héros ne contre-attaquera donc pas systématiquement. Désolé pour ces explications brouillonnes mais c'est galère à expliquer. Comme tu as déjà testé le script, je pense que tu m'as compris x)

Et pour l'histoire de la contre-attaque qui renvoie les dégâts, désoler mais le script tel qu'il a été scripté ne le permet pas. en effet, lors d'une contre-attaque, le héros, ou le monstre qui contre-attaque ne renvoi par les dégâts subis, il inflige les dégâts de sa propre attaque de base. En gros, le script ignore les dégâts qui ont provoqué la contre-attaque, il permet juste de faire une attaque supplément si et seulement si la personne attaquée et sous l’effet contre-attaque, et si et seulement si l'attaque qui vient d'être porté n'est pas une contre-attaque. Il faut se servir de ce script mais faire un tout nouveau script en plus pour faire "l'effet miroir" de Pokémon.

MMORPG : VX => http://www.rpg-maker.fr/scripts-342-net-gaming.html //\\ XP => http://www.rpg-maker.fr/scripts-425-netplay-master-script-mmorpg.html

Suite à de nombreux abus, le post en invités a été désactivé. Veuillez vous inscrire si vous souhaitez participer à la conversation.

Haut de page

Merci de ne pas reproduire le contenu de ce site sans autorisation.
Contacter l'équipe - Mentions légales

Plan du site

Communauté: Accueil | Forum | Chat | Commentaires | News | Flash-news | Screen de la semaine | Sorties | Tests | Gaming-Live | Interviews | Galerie | OST | Blogs | Recherche
Apprendre: Visite guidée | RPG Maker 95 | RPG Maker 2003 | RPG Maker XP | RPG Maker VX | RPG Maker MV | Tutoriels | Guides | Making-of
Télécharger: Programmes | Scripts/Plugins | Ressources graphiques / sonores | Packs de ressources | Midis | Eléments séparés | Sprites
Jeux: Au hasard | Notre sélection | Sélection des membres | Tous les jeux | Jeux complets | Le cimetière | RPG Maker 95 | RPG Maker 2000 | RPG Maker 2003 | RPG Maker XP | RPG Maker VX | RPG Maker VX Ace | RPG Maker MV | Autres | Proposer
Ressources RPG Maker 2000/2003: Chipsets | Charsets | Panoramas | Backdrops | Facesets | Battle anims | Battle charsets | Monstres | Systems | Templates
Ressources RPG Maker XP: Tilesets | Autotiles | Characters | Battlers | Window skins | Icônes | Transitions | Fogs | Templates
Ressources RPG Maker VX: Tilesets | Charsets | Facesets | Systèmes
Ressources RPG Maker MV: Tilesets | Characters | Faces | Systèmes | Title | Battlebacks | Animations | SV/Ennemis
Archives: Palmarès | L'Annuaire | Livre d'or | Le Wiki | Divers