Pokémon Script Project Forum Index

Manuel | Search
 Information des admins 
Si vous désirez parler de PSP ou obtenir du soutient là dessus, merci d'aller faire un tour sur https://pokemonworkshop.com/forum/index.php Imbécile heureux

[Script RPG Maker XP] Antilag

 
Post new topic   Reply to topic    Pokémon Script Project Forum Index -> Game Making -> Ressources techniques -> Scripts
Previous topic :: Next topic   
Author Message
LaPampa
Membre


Joined: 13 Dec 2009
Posts: 663
Pampa Masculin


PostPosted: Sun 13 Mar - 13:58 (2011)    Post subject: [Script RPG Maker XP] Antilag

Bonjour à tous !
Si vous faites une map de taille conséquente, et que vous y placez des événements complexes, le jeu à toute ses chances pour laguer. Et quand un jeu lag, ça devient vite :pendaison:
Pour empêcher ça, il faut un antilag. C'est relativement simple d'en trouver un, mais c'est plus compliqué d'en trouver un qui fonctionne.
En voici un trouvé sur Oniromancie, il est de Near Fantastica, et c'est le meilleur antilag que j'ai pu tester.

Placez ce script juste au dessus de Main (à la fin), et appellez le Game_Map.

Code:

#======================================
# ¦ Anti Event Lag Script
#======================================
# By: Near Fantastica
# Date: 12.06.05
# Version: 3
# Addon by Rabu
#======================================
# Addon: Auch Events werden upgedatet die ausserhalb des range?-Bereichs
# liegen, aber als erste Event-Zeile einen "comment"-Befehl beinhalten.
# Also Events will be updated, that have a "Comment"-command
# in the first line of the event - (inspired by Rataime)
#======================================
# ¦ Game_Map
#======================================

class Game_Map
#--------------------------------------------------------------------------
def in_range?(object)
screne_x = $game_map.display_x
screne_x -= 256
screne_y = $game_map.display_y
screne_y -= 256
screne_width = $game_map.display_x
screne_width += 2816
screne_height = $game_map.display_y
screne_height += 2176
return false if object.real_x <= screne_x
return false if object.real_x >= screne_width
return false if object.real_y <= screne_y
return false if object.real_y >= screne_height
return true
end
#--------------------------------------------------------------------------
def update
if $game_map.need_refresh
refresh
end
if @scroll_rest > 0
distance = 2 ** @scroll_speed
case @scroll_direction
when 2
scroll_down(distance)
when 4
scroll_left(distance)
when 6
scroll_right(distance)
when 8
scroll_up(distance)
end
@scroll_rest -= distance
end
for event in @events.values
#===== Änderung / Modification- Rabu ==========
if in_range?(event) or event.trigger == 3 or event.trigger == 4 or (event.list!=nil and event.list[0].code == 108)
#==============================================
event.update
end
end
for common_event in @common_events.values
common_event.update
end
@fog_ox -= @fog_sx / 8.0
@fog_oy -= @fog_sy / 8.0
if @fog_tone_duration >= 1
d = @fog_tone_duration
target = @fog_tone_target
@fog_tone.red = (@fog_tone.red * (d - 1) + target.red) / d
@fog_tone.green = (@fog_tone.green * (d - 1) + target.green) / d
@fog_tone.blue = (@fog_tone.blue * (d - 1) + target.blue) / d
@fog_tone.gray = (@fog_tone.gray * (d - 1) + target.gray) / d
@fog_tone_duration -= 1
end
if @fog_opacity_duration >= 1
d = @fog_opacity_duration
@fog_opacity = (@fog_opacity * (d - 1) + @fog_opacity_target) / d
@fog_opacity_duration -= 1
end
end
end

#======================================
# ¦ Spriteset_Map
#======================================

class Spriteset_Map
#--------------------------------------------------------------------------
def in_range?(object)
screne_x = $game_map.display_x
screne_x -= 256
screne_y = $game_map.display_y
screne_y -= 256
screne_width = $game_map.display_x
screne_width += 2816
screne_height = $game_map.display_y
screne_height += 2176
return false if object.real_x <= screne_x
return false if object.real_x >= screne_width
return false if object.real_y <= screne_y
return false if object.real_y >= screne_height
return true
end
#--------------------------------------------------------------------------
def update
if @panorama_name != $game_map.panorama_name or
@panorama_hue != $game_map.panorama_hue
@panorama_name = $game_map.panorama_name
@panorama_hue = $game_map.panorama_hue
if @panorama.bitmap != nil
@panorama.bitmap.dispose
@panorama.bitmap = nil
end
if @panorama_name != ""
@panorama.bitmap = RPG::Cache.panorama(@panorama_name, @panorama_hue)
end
Graphics.frame_reset
end
if @fog_name != $game_map.fog_name or @fog_hue != $game_map.fog_hue
@fog_name = $game_map.fog_name
@fog_hue = $game_map.fog_hue
if @fog.bitmap != nil
@fog.bitmap.dispose
@fog.bitmap = nil
end
if @fog_name != ""
@fog.bitmap = RPG::Cache.fog(@fog_name, @fog_hue)
end
Graphics.frame_reset
end
@tilemap.ox = $game_map.display_x / 4
@tilemap.oy = $game_map.display_y / 4
@tilemap.update
@panorama.ox = $game_map.display_x / 8
@panorama.oy = $game_map.display_y / 8
@fog.zoom_x = $game_map.fog_zoom / 100.0
@fog.zoom_y = $game_map.fog_zoom / 100.0
@fog.opacity = $game_map.fog_opacity
@fog.blend_type = $game_map.fog_blend_type
@fog.ox = $game_map.display_x / 4 + $game_map.fog_ox
@fog.oy = $game_map.display_y / 4 + $game_map.fog_oy
@fog.tone = $game_map.fog_tone
i=0
for sprite in @character_sprites
if sprite.character.is_a?(Game_Event)
#===== Änderung / Modification- Rabu ==========
if in_range?(sprite.character) or sprite.character.trigger == 3 or sprite.character.trigger == 4 or (sprite.character.list!=nil and sprite.character.list[0].code == 108)
#==============================================
sprite.update
i+=1
end
else
sprite.update
i+=1
end
end
#p i
@weather.type = $game_screen.weather_type
@weather.max = $game_screen.weather_max
@weather.ox = $game_map.display_x / 4
@weather.oy = $game_map.display_y / 4
@weather.update
for sprite in @picture_sprites
sprite.update
end
@timer_sprite.update
@viewport1.tone = $game_screen.tone
@viewport1.ox = $game_screen.shake
@viewport3.color = $game_screen.flash_color
@viewport1.update
@viewport3.update
end
end

Voilà, en espérant qu'il vous serve autant qu'à moi ^^


Last edited by LaPampa on Wed 23 Mar - 21:28 (2011); edited 2 times in total
Back to top
Visit poster’s website
Publicité






PostPosted: Sun 13 Mar - 13:58 (2011)    Post subject: Publicité

PublicitéSupprimer les publicités ?
Back to top
Zooria
Membre


Joined: 19 Feb 2011
Posts: 98

PostPosted: Wed 23 Mar - 20:19 (2011)    Post subject: [Script RPG Maker XP] Antilag

Je vien critiquer, mais pas méchament Imbécile heureux
1- tu devrai mettre ton script entre balise de code !
2- tu n'est pas dans la bonne section !
Back to top
LaPampa
Membre


Joined: 13 Dec 2009
Posts: 663
Pampa Masculin


PostPosted: Wed 23 Mar - 21:33 (2011)    Post subject: [Script RPG Maker XP] Antilag

Merci de me l'avoir fait remarqué =)
Et c'est resté comme ça 10 jours ! ><
Back to top
Visit poster’s website
Speed
Ex-staff


Joined: 04 Jan 2008
Posts: 1,701
Localisation: Marseille (13)
Masculin

PostPosted: Wed 23 Mar - 21:42 (2011)    Post subject: [Script RPG Maker XP] Antilag

Bonjour,

je déplace le sujet dans la section adéquate.

Merci, Speed.
Back to top
Wolforax
Membre


Joined: 27 Jul 2013
Posts: 108
GFX
Localisation: ...

PostPosted: Mon 12 Aug - 08:46 (2013)    Post subject: [Script RPG Maker XP] Antilag

Tu pourrais préciser comment fonctionne le script? Parce que aller chercher un script sur un autre site comme ça on peut le faire nous même
 
Quote:
lol, Oniromancie la grosse communauté de kikoolol qui t'agressent quand tu fais une présentation...
Back to top
Skype
Eurons くさ
Animateur
Animateur


Joined: 23 Nov 2011
Posts: 1,040
La mort.
Localisation: Partout dans ce monde ou je puis ôter la vie.
Non renseigné (Visible...)

PostPosted: Mon 12 Aug - 11:14 (2013)    Post subject: [Script RPG Maker XP] Antilag

Merci de ne pas faire de nécro-post...
Bref tu as juste à placer le script au dessus de main.
Back to top
Skype
Contenu Sponsorisé






PostPosted: Today at 17:03 (2019)    Post subject: [Script RPG Maker XP] Antilag

Back to top
Display posts from previous:   
Post new topic   Reply to topic    Pokémon Script Project Forum Index -> Game Making -> Ressources techniques -> Scripts All times are GMT + 1 Hour
Page 1 of 1

 
Jump to:  

Index | Free forum | Free support forum | Free forums directory | Report a violation | Conditions générales d'utilisation
Powered by phpBB © 2001, 2005 phpBB Group
Thème par Thomas et l'équipe de la refonte PSP 2012 (version 1.0)