Oniromancie: Scripts - Reflet dans l'eau


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

News: Concours des Alex d'Or 2017-18: (...) / News: MegaMaker : créez votre propre (...) / News: Test de Tinker Quarry / Sorties: Leave the Room / Jeux: Leave the Room /

Chat  (24 connectés)

Bienvenue
visiteur !






publicité RPG Maker!

Statistiques

Liste des
membres


Contact

72 connectés actuellement

9173750 visiteurs
depuis l'ouverture

931 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

Tashiroworld

LUMEN - Le jeu

Thérapie-RMVX

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





Reflet dans l'eau
Script pour RPG Maker XP
Ecrit par luxx

Faites un évènement ayant comme commentaire :

- hero_r pour mettre le reflet du héros

- r pour mettre le reflet d'un évènement quelconque.

Pour afficher le reflet, allez dans la base de données et ensuite dans "gestion de chipset". Sélectionnez le tileset, cliquez sur "Terrain" et mettez "7" pour le carreau où vous voulez qu'il y est un reflet. Par exemple, mettez "7" sur le carreau représentant l'eau pour avoir un reflet dans l'eau (comme l'image ci-dessus)

Mettez le dans un nouveau script

Portion de code:



#==============================================================================
# ■ Sprite_Reflection
# Based on Sprite_Mirror, Modified By: JmsPlDnl, rewritten entirely by Rataime
#==============================================================================
CATERPILLAR_COMPATIBLE = true

class Game_Party
attr_reader :characters
end

class Sprite_Reflection < RPG::Sprite

attr_accessor :character

def initialize(viewport=nil, character=nil,self_angle = 180)
super(viewport)
@character = character
@self_angle=self_angle
self.opacity=0
@reflected=false
@former=false
@moving=false
if $game_map.terrain_tag(@character.real_x/128,@character.real_y/128+1)==7
@reflected=true
@former=true
end
update
end

def update
super
if @tile_id != @character.tile_id or
@character_name != @character.character_name or
@character_hue != @character.character_hue
@tile_id = @character.tile_id
@character_name = @character.character_name
@character_hue = @character.character_hue
if @tile_id >= 384
self.bitmap = RPG::Cache.tile($game_map.tileset_name,
@tile_id, @character.character_hue)
self.src_rect.set(0, 0, 32, 32)
self.ox = 16
self.oy = 32
else
self.bitmap = RPG::Cache.character(@character.character_name,
@character.character_hue)
@cw = bitmap.width / 4
@ch = bitmap.height / 4
self.ox = @cw / 2
self.oy = @ch
end
end

self.visible = (not @character.transparent)
if @tile_id == 0
sx = (@character.pattern) * @cw
sy = (@character.direction - 2) / 2 * @ch
if @character.direction== 6
sy = ( 4- 2) / 2 * @ch
end
if @character.direction== 4
sy = ( 6- 2) / 2 * @ch
end
if @character.direction != 4 and @character.direction != 6
sy = (@character.direction - 2) / 2 * @ch
end
end

self.x = @character.screen_x
self.y = @character.screen_y-5
@moving=!(@character.real_x%128==0 and @character.real_y%128==0)
@d=@character.direction
@rect=[sx, sy, @cw, @ch„
if !(@moving)
if $game_map.terrain_tag(@character.real_x/128,@character.real_y/128+1)==7
@reflected=true
@former=true
else
@reflected=false
@former=false
end

else
case @d

when 2
if $game_map.terrain_tag(@character.real_x/128,@character.real_y/128+2)==7
@reflected=true
if @former==false
@offset = (@character.screen_y%32)*@ch/32
@rect=[sx, sy, @cw, @offset„
self.y=@character.screen_y-5
end
else
@reflected=false
end

when 4
if $game_map.terrain_tag(@character.real_x/128,@character.real_y/128+1)!=7
@offset = ((@character.screen_x-@cw/2)%32)*@cw/32
@rect=[sx, sy, @offset, @ch„
self.x=@character.screen_x
else
@reflected=true
if @former==false
@offset = ((@character.screen_x-@cw/2)%32)*@cw/32
@rect=[sx+@offset, sy, @cw-@offset, @ch„
self.x=@character.screen_x-@offset
end
end

when 6
if $game_map.terrain_tag(@character.real_x/128+1,@character.real_y/128+1)!=7
@offset = ((@character.screen_x-@cw/2)%32)*@cw/32
@rect=[sx+@offset, sy, @cw-@offset, @ch„
self.x=@character.screen_x-@offset
else
@reflected=true
if @former==false
@offset = ((@character.screen_x-@cw/2)%32)*@cw/32
@rect=[sx, sy, @offset, @ch„
self.x=@character.screen_x
end
end

when 8
if $game_map.terrain_tag(@character.real_x/128,@character.real_y/128+2)==7
@reflected=true
if $game_map.terrain_tag(@character.real_x/128,@character.real_y/128+1)!=7
@offset = (@character.screen_y%32)*@ch/32
@rect=[sx, sy, @cw, @offset„
self.y=@character.screen_y-5
end
else
@reflected=false
end

end

end
if @reflected
self.opacity=128
else
@rect=[sx, sy, @cw, @ch„
self.opacity=0
end

if $game_map.terrain_tag((@character.real_x+64)/128,@character.real_y/128+2)!=7
if $game_map.terrain_tag((@character.real_x+64)/128,@character.real_y/128+2)!=7
@rect[1„= @rect[1„+@ch/2
@rect[3„= @rect[3„/2
self.y = self.y - @ch/2
else
@reflected=false
end
end

self.src_rect.set(@rect[0„,@rect[1„,@rect[2„,@rect[3„)

@character.is_a?(Game_Player) ? self.z = 9 : self.z = 5
self.blend_type = @character.blend_type
self.bush_depth = @character.bush_depth
if @character.animation_id != 0
animation = $data_animations[@character.animation_id„
animation(animation, true)
@character.animation_id = 0
end

self.angle = @self_angle
end
end

#===================================================
# ▼ CLASS Sprite_Character edit
#===================================================

class Sprite_Character < RPG::Sprite
alias reflect_initialize initialize

def initialize(viewport, character = nil)
@character = character
@reflection = [„
super(viewport)
if (character.is_a?(Game_Event) and character.list!=nil and character.list[0„.code == 108 and character.list[0„.parameters == ["r"„)
@reflection.push(Sprite_Reflection.new(viewport,@character))
end
if (character.is_a?(Game_Event) and character.list!=nil and character.list[0„.code == 108 and character.list[0„.parameters == ["hero_r"„)
@reflection.push(Sprite_Reflection.new(viewport,$game_player))
#===================================================
# ● Compatibility with fukuyama's caterpillar script
#===================================================
if CATERPILLAR_COMPATIBLE and $game_party.characters!=nil

for member in $game_party.characters
@reflection.push(Sprite_Reflection.new(viewport,member))
end

end
#===================================================
# ● End of the compatibility
#===================================================
end
reflect_initialize(viewport, @character)
end

alias reflect_update update

def update
reflect_update
if @reflection!=nil
for reflect in @reflection
reflect.update
end
end
end

end



Samelio Navar - posté le 07/01/2009 à 14:45:25. (2 messages postés)

rpgmakeur

moi j'ai eu ce script par un autre site et il est bien pas de bug et tout et tou mais une seule chose que je trouve dommage c'est ( roulement de tambour ^^ ) des reflet sur le sol par exemple sur un pont qui passe au dessus un cour d'eau qui est sur la première couche il y a quand même un reflet qui se projette sur le pont ( comme si le pont etait lustré par des lutin qui sont venu la nuit ^^ mais bon pour une map on peut ne pas mettre de reflet

Sinon bon script a essayer ;)

ps: faite la même chose pour la glace sa donne super bien enfin a mon avis vous avez tous eu la même idée ;)

Amicalement Samelio


Nanaya - posté le 12/12/2010 à 21:44:42. (1 messages postés)

Bonsoir,

J'ai testé ce script avec RMXP Delta, en essayant de mettre tout comme indiqué (et plus : event en processus para., priorité 1 pour le tilset, 7 pour comme chiffre, ...).
Rien à faire, ça ne marche pas, le jeu se lance, y a pas de bug, mais pas non plus de reflet, et mes connaissance en ruby/rgss sont trop faible pour y remédier, quelqu'un pourrait-il m'aider svp ?

Bien à vous,

Nanaya


SuperGregMaker - posté le 04/07/2012 à 01:26:14. (111 messages postés)

J'aime les trains.

Et une syntax error, une !

Que Dieu vous garde, j'ai plus de place chez moi ...

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