Oniromancie: Scripts - Anti lag


Comment ça marche?

Aëdemphia
Par Sylvanor

Fighting Robots Quest
Par Boulon

Forstale
Par Ødd Clock

Geex
Par roys

Inexistence
Par Falco

La Légende d'Ibabou
Par Zaitan

Lije
Par Gaetz

LoveMaster
Par Cuddlefox

Sarcia
Par Kaëlar

Super Mario RPG - Lost Souls
Par Omegabowser

Jeux: Monster World RPG / Jeux: Pif et Hercule / News: Mise à jour de RPG Maker 2003 / Tutos: Création de charset / Jeux: FAYLINAWA /

Chat  (42 connectés)

Bienvenue
visiteur !








Statistiques

Liste des
membres


Contact

81 connectés actuellement

9265630 visiteurs
depuis l'ouverture

887 visiteurs
aujourd'hui

Groupe Facebook

Barre de séparation

Partenaires




TOP
GAMEMAKING


Les 5 plus
visités

Lunae, le baz'arts d'Emz0

Le studio du chat vert

Pixelandgame

Tashiroworld

HeyMakeGames

Au hasard

Lunae, le baz'arts d'Emz0

Make & Graph'

Le blog de Mr. Joke

Les deux derniers

Lunae, le baz'arts d'Emz0

Le studio du chat vert

Nos autres partenaires

Devenir
partenaire


Barre de séparation

Un site du réseau
War Paradise

Annuaires référenceurs




Anti lag
Script pour RPG Maker VXACE
Ecrit par kyotojap30

Il permet de désactivé les événement en parallèle donc très utiles pour les grandes mappes.
Je remercie donc le site Atelier RGSS pour les droit de poster ce script
Placer le script au dessus de Main Process.

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
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
#==============================================================================
# +++ MOG - Simple Anti Lag (V2.1) +++ 
#==============================================================================
# By Moghunter
# <a href="https://atelierrgss.wordpress.com/" target="_blank">https://atelierrgss.wordpress.com/</a>
#==============================================================================
# Sistema de antilag. Basicamente faz com que o sistema não atualize os eventos
# fora da tela.
#==============================================================================
# Para forçar um evento atualizar fora da tela coloque este comentário no
# evento.
#
# <Force Update>
#
#==============================================================================
# Para desativar ou ativar o sistema de antilag use o comando abaixo
#
# $game_system.anti_lag = true
#
#==============================================================================
# NOTA - Este script não funciona em mapas com efeito LOOP.
# 
#==============================================================================
# ● Version History
#==============================================================================
# 2.1 - Compatibilidade com resoluções maiores que o padrão.
#==============================================================================
module MOG_ANTI_LAG
  #Area que será atualizada fora da tela. 
  UPDATE_OUT_SCREEN_RANGE = 3 
end
 
$imported = {} if $imported.nil?
$imported[:mog_anti_lag] = true
 
#==============================================================================
# ■ Game_System
#==============================================================================
class Game_System
  
  attr_accessor :anti_lag
  
 #--------------------------------------------------------------------------
 # ● Initialize
 #--------------------------------------------------------------------------   
  alias mog_antilag_initialize initialize
  def initialize
      @anti_lag = true
      mog_antilag_initialize
  end  
    
end
 
#==============================================================================
# ■ Game CharacterBase
#==============================================================================
class Game_CharacterBase
  
  attr_accessor :force_update 
  attr_accessor :can_update
  
  #--------------------------------------------------------------------------
  # ● Init Public Members
  #--------------------------------------------------------------------------  
  alias mog_antilag_init_public_members init_public_members
  def init_public_members
      mog_antilag_init_public_members
      @force_update = false ; @can_update = true
  end
  
end
 
#==============================================================================
# ■ Game_Character
#==============================================================================
class Game_Event < Game_Character
 
  #--------------------------------------------------------------------------
  # ● Initialize
  #--------------------------------------------------------------------------
  alias mog_anti_lag_initialize initialize
  def initialize(map_id, event)
      mog_anti_lag_initialize(map_id, event)
      anti_lag_initial_setup
  end
  
 #--------------------------------------------------------------------------
 # ● Setup Page Setting
 #--------------------------------------------------------------------------                     
  alias mog_antilag_setup_page_settings setup_page_settings
  def setup_page_settings
      mog_antilag_setup_page_settings
      set_force_update
  end
    
 #--------------------------------------------------------------------------
 # ● Set Force Update
 #--------------------------------------------------------------------------                       
  def set_force_update
      return if @list == nil
      for command in @list
          if command.code == 108
             @force_update = true if command.parameters[0] =~ /<Force Update>/
          end
      end 
   end  
  
  #--------------------------------------------------------------------------
  # ● Anti Lag Initial Setup
  #--------------------------------------------------------------------------  
  def anti_lag_initial_setup
      @can_update = true, rg = [(Graphics.width / 32) - 1, (Graphics.height / 32) - 1]
      @loop_map = ($game_map.loop_horizontal? or $game_map.loop_vertical?) ? true : false
      out_screen = MOG_ANTI_LAG::UPDATE_OUT_SCREEN_RANGE
      @antilag_range = [-out_screen, rg[0] + out_screen,rg[1] + out_screen]
  end
      
  #--------------------------------------------------------------------------
  # ● Anti Lag Force Update
  #--------------------------------------------------------------------------    
  def antilag_force_update?
      return true if !$game_system.anti_lag
      return true if @loop_map
      return true if @force_update
      return true if @trigger != nil and @trigger >= 3
      return true if anti_lag_event_on_screen?
      return false
  end  
    
 #--------------------------------------------------------------------------
 # ● Anti Lag Event On Screen?
 #--------------------------------------------------------------------------
 def anti_lag_event_on_screen?
     distance_x = @x - ($game_map.display_x).truncate
     distance_y = @y - ($game_map.display_y).truncate
     if distance_x.between?(@antilag_range[0], @antilag_range[1]) and
        distance_y.between?(@antilag_range[0], @antilag_range[2])
        return true
     end
     return false 
 end
  
 #--------------------------------------------------------------------------
 # ● Update
 #--------------------------------------------------------------------------     
  alias mog_anti_lag_update update
  def update
      @can_update = antilag_force_update?
      return if !@can_update 
      mog_anti_lag_update
  end
end
 
#==============================================================================
# ■ Sprite Character
#==============================================================================
class Sprite_Character < Sprite_Base
 
 #--------------------------------------------------------------------------
 # ● Check Can Update Sprite
 #--------------------------------------------------------------------------       
  def check_can_update_sprite
      reset_sprite_effects  if (self.visible and !@character.can_update)
      self.visible = @character.can_update
      @balloon_sprite.visible = self.visible if @balloon_sprite != nil
  end
  
 #--------------------------------------------------------------------------
 # ● Reset Sprite Effects
 #--------------------------------------------------------------------------         
  def reset_sprite_effects
      dispose_animation ; dispose_balloon
  end
 
 #--------------------------------------------------------------------------
 # ● Update
 #--------------------------------------------------------------------------           
  alias mog_anti_lag_update update
  def update
      if @character.is_a?(Game_Event)
         check_can_update_sprite
         return if !self.visible
      end
      mog_anti_lag_update
  end
  
end


Faite un événement, Appel de script puis entrer cette ligne :

Portion de code : Tout sélectionner

1
$game_system.anti_lag = true


N'oublier de mettre l’événement en parallèle, pour qu'il fonctionne.

Bonne continuation à tous pour vos projet ;) :salut



Aucun commentaire n'a été posté pour le moment.

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

Plan du site:

Activité: Accueil | News | Forum | Flash-news | Chat | Commentaires | Galerie | Screen de la semaine | Sorties | Articles perso | Livre d'or | Recherche
Jeux: Index jeux séparés | Top Classiques | Top Originaux | Les autres | RPG Maker 95 | RPG Maker 2000 | RPG Maker 2003 | RPG Maker XP | RPG Maker VX | RPG Maker VX Ace | RPG Maker MV | Autres | Jeux complets | Proposer
Rubriques: Le Wiki | Collection Oniro | Tutoriaux | Scripts | Guides | Gaming-Live | Tests | Making-of | Interviews | Articles perso | OST | L'Annuaire | Divers | Palmarès
Hébergés: Aëdemphia | Fighting Robots Quest | Forstale | Geex | Inexistence | La Légende d'Ibabou | Lije | LoveMaster | Sarcia | Super Mario RPG - Lost Souls
Ressources: Jeux | Programmes | Packs de ressources | Midis | Eléments séparés | Sprites
RPG Maker 2000/2003: Chipsets | Charsets | Panoramas | Backdrops | Facesets | Battle anims | Battle charsets | Monstres | Systems | Templates
RPG Maker XP: Tilesets | Autotiles | Characters | Battlers | Window skins | Icônes | Transitions | Fogs | Templates
RPG Maker VX: Tilesets | Charsets | Facesets | Systèmes
RPG Maker MV: Tilesets | Characters | Faces | Systèmes | Title | Battlebacks | Animations | SV/Ennemis