|
|
| 3D Isométrique façon Kingdom Hearts | |
| Auteur | Message |
---|
uchiha sasukeMatière
Messages : 216 Age : 33 Date d'inscription : 12/02/2007
Caractéristiques du membre Evolution: Atome Job: XP: (20/20)
| Sujet: 3D Isométrique façon Kingdom Hearts Mar 13 Mar 2007 - 12:11 | |
| Voici le script permettant de faire de la 3D Isométrique comme Kingdom Hearts. Code: - Code:
-
#============================================================================== # ** Game_Character (Modification) #------------------------------------------------------------------------------ # This class deals with characters. It's used as a superclass for the # Game_Player and Game_Event classes. #==============================================================================
DIR_8_FRAMES = 8 # This holds the number of motion frames when walking DIR_8_STAND = true # This determines if separate frame used for standing
class Game_Character
attr_reader :step_anime attr_reader :stop_count
#-------------------------------------------------------------------------- # * Frame Update #-------------------------------------------------------------------------- def update # Branch with jumping, moving, and stopping if jumping? update_jump elsif moving? update_move else update_stop end # If animation count exceeds maximum value # * Maximum value is move speed * 1 taken from basic value 18 if @anime_count > 18 - @move_speed * 2 # If stop animation is OFF when stopping if not @step_anime and @stop_count > 0 # Return to original pattern @pattern = @original_pattern # If stop animation is ON when moving else # Update pattern @pattern = ((@pattern 1 ) % DIR_8_FRAMES) end # Clear animation count @anime_count = 0 end # If waiting if @wait_count > 0 # Reduce wait count @wait_count -= 1 return end # If move route is forced if @move_route_forcing # Custom move move_type_custom return end # When waiting for event execution or locked if @starting or lock? # Not moving by self return end # If stop count exceeds a certain value (computed from move frequency) if @stop_count > (40 - @move_frequency * 2) * (6 - @move_frequency) # Branch by move type case @move_type when 1 # Random move_type_random when 2 # Approach move_type_toward_player when 3 # Custom move_type_custom end end end
#-------------------------------------------------------------------------- # * Move Lower Left (Rewritten for diagonal animation) #-------------------------------------------------------------------------- def move_lower_left unless @direction_fix @direction = 1 end if (passable?(@x, @y, 2) and passable?(@x, @y 1, 4)) or (passable?(@x, @y, 4) and passable?(@x - 1, @y, 2)) turn_downleft @x -= 1 @y = 1 increase_steps end end
#-------------------------------------------------------------------------- # * Move Lower Right (Rewritten for diagonal animation) #-------------------------------------------------------------------------- def move_lower_right unless @direction_fix @direction = 3 end if (passable?(@x, @y, 2) and passable?(@x, @y 1, 6)) or (passable?(@x, @y, 6) and passable?(@x 1, @y, 2)) turn_downright @x = 1 @y = 1 increase_steps end end
#-------------------------------------------------------------------------- # * Move Upper Left (Rewritten for diagonal animation) #-------------------------------------------------------------------------- def move_upper_left unless @direction_fix @direction = 7 end if (passable?(@x, @y, 8) and passable?(@x, @y - 1, 4)) or (passable?(@x, @y, 4) and passable?(@x - 1, @y, 8)) turn_upleft @x -= 1 @y -= 1 increase_steps end end
#-------------------------------------------------------------------------- # * Move Upper Left (Rewritten for diagonal animation) #-------------------------------------------------------------------------- def move_upper_right unless @direction_fix @direction = 9 end if (passable?(@x, @y, 8) and passable?(@x, @y - 1, 6)) or (passable?(@x, @y, 6) and passable?(@x 1, @y, 8)) turn_upright @x = 1 @y -= 1 increase_steps end end
#-------------------------------------------------------------------------- # * Turn Up Left (Rewritten for diagonal animation) #-------------------------------------------------------------------------- def turn_upleft unless @direction_fix @direction = 7 @stop_count = 0 end end
#-------------------------------------------------------------------------- # * Turn Up Right (Rewritten for diagonal animation) #-------------------------------------------------------------------------- def turn_upright unless @direction_fix @direction = 9 @stop_count = 0 end end
#-------------------------------------------------------------------------- # * Turn Down Left (Rewritten for diagonal animation) #-------------------------------------------------------------------------- def turn_downleft unless @direction_fix @direction = 1 @stop_count = 0 end end
#-------------------------------------------------------------------------- # * Turn Down Right (Rewritten for diagonal animation) #-------------------------------------------------------------------------- def turn_downright unless @direction_fix @direction = 3 @stop_count = 0 end end end
#============================================================================== # ** Game_Player #------------------------------------------------------------------------------ # This class handles the player. Its functions include event starting # determinants and map scrolling. Refer to "$game_player" for the one # instance of this class. #==============================================================================
class Game_Player < Game_Character
#-------------------------------------------------------------------------- # * Frame Update #-------------------------------------------------------------------------- def update # Remember whether or not moving in local variables last_moving = moving? # If moving, event running, move route forcing, and message window # display are all not occurring unless moving? or $game_system.map_interpreter.running? or @move_route_forcing or $game_temp.message_window_showing
# Move player in the direction the directional button is being pressed # Rewritten for diagonal animation case Input.dir8 when 2 move_down when 4 move_left when 6 move_right when 8 move_up when 7 move_upper_left when 9 move_upper_right when 3 move_lower_right when 1 move_lower_left end end
# Remember coordinates in local variables last_real_x = @real_x last_real_y = @real_y super # If character moves down and is positioned lower than the center # of the screen if @real_y > last_real_y and @real_y - $game_map.display_y > CENTER_Y # Scroll map down $game_map.scroll_down(@real_y - last_real_y) end # If character moves left and is positioned more let on-screen than # center if @real_x < last_real_x and @real_x - $game_map.display_x < CENTER_X # Scroll map left $game_map.scroll_left(last_real_x - @real_x) end # If character moves right and is positioned more right on-screen than # center if @real_x > last_real_x and @real_x - $game_map.display_x > CENTER_X # Scroll map right $game_map.scroll_right(@real_x - last_real_x) end # If character moves up and is positioned higher than the center # of the screen if @real_y < last_real_y and @real_y - $game_map.display_y < CENTER_Y # Scroll map up $game_map.scroll_up(last_real_y - @real_y) end # If not moving unless moving? # If player was moving last time if last_moving # Event determinant is via touch of same position event result = check_event_trigger_here([1,2]) # If event which started does not exist if result == false # Disregard if debug mode is ON and ctrl key was pressed unless $DEBUG and Input.press?(Input::CTRL) # Encounter countdown if @encounter_count > 0 @encounter_count -= 1 end end end end # If C button was pressed if Input.trigger?(Input::C) # Same position and front event determinant check_event_trigger_here([0]) check_event_trigger_there([0,1,2]) end end end end
#============================================================================== # ** Sprite_Character #------------------------------------------------------------------------------ # This sprite is used to display the character.It observes the Game_Character # class and automatically changes sprite conditions. #==============================================================================
class Sprite_Character < RPG::Sprite
#-------------------------------------------------------------------------- # * Frame Update #-------------------------------------------------------------------------- def update super # If tile ID, file name, or hue are different from current ones if @tile_id != @character.tile_id or @character_name != @character.character_name or @character_hue != @character.character_hue # Remember tile ID, file name, and hue @tile_id = @character.tile_id @character_name = @character.character_name @character_hue = @character.character_hue # If tile ID value is valid 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 # If tile ID value is invalid else self.bitmap = RPG::Cache.character(@character.character_name, @character.character_hue) if DIR_8_STAND @cw = bitmap.width / (DIR_8_FRAMES 1) # Movement frames w/ stand else @cw = bitmap.width / (DIR_8_FRAMES) # Movement frames regular end @ch = bitmap.height / 8 # This sets for 8 directions self.ox = @cw / 2 self.oy = @ch end end # Set visible situation self.visible = (not @character.transparent) # If graphic is character if @tile_id == 0 # Set rectangular transfer
# Set horizontal transfer (animation frames) if not @character.step_anime and @character.stop_count > 0 sx = (@character.pattern) * @cw else sx = (@character.pattern 1) * @cw end # If you want the standing frame to be PART of the walking animation... # like the default sprites (very plain...) comment out the above set # of statements EXCEPT sx = (@character.pattern) * @cw
# Set vertical transfer (direction) dir = @character.direction # These routines allow for eight dec = (dir == 7 or dir== 9) ? 3 : 1 # directional movement. I forgot sy = (dir - dec) * @ch # how I came up with it. Really.
self.src_rect.set(sx, sy, @cw, @ch) end # Set sprite coordinates self.x = @character.screen_x self.y = @character.screen_y self.z = @character.screen_z(@ch) # Set opacity level, blend method, and bush depth self.opacity = @character.opacity self.blend_type = @character.blend_type self.bush_depth = @character.bush_depth # Animation if @character.animation_id != 0 animation = $data_animations[@character.animation_id] animation(animation, true) @character.animation_id = 0 end end end
Vous aurez besoin de ce genre de charas |
| | | darkness03Embryon
Messages : 640 Age : 30 Date d'inscription : 11/11/2006
Caractéristiques du membre Evolution: Atome Job: XP: (20/20)
| Sujet: Re: 3D Isométrique façon Kingdom Hearts Mar 13 Mar 2007 - 20:39 | |
| Hey,sa va en aider plus d'un sa,surtout que beaucoup de gens font des jeux de kh ^^(Tiens,je viens d'acheter kh aujourd'hui :p) |
| | | maximilangeMatière
Messages : 128 Loisirs : RPG Maker XP,Internet,Theatre,Jeu vidéo Date d'inscription : 14/01/2007
Caractéristiques du membre Evolution: Atome Job: Un de peu de tout =) sauf les scripts encore pas mal de pb :/ ^^ XP: (20/20)
| Sujet: Re: 3D Isométrique façon Kingdom Hearts Jeu 15 Mar 2007 - 17:29 | |
| Cool maisca ne marche pas ligne 38 et faut il fiare un nouveau script ou en remplacez un ?? |
| | | uchiha sasukeMatière
Messages : 216 Age : 33 Date d'inscription : 12/02/2007
Caractéristiques du membre Evolution: Atome Job: XP: (20/20)
| Sujet: Re: 3D Isométrique façon Kingdom Hearts Ven 16 Mar 2007 - 17:52 | |
| Euh... desoler je ne sais pas mais je crois que tu doit en faire un nouveau au-dessus de Main |
| | | zarcan (compte qui bugue)Matière
Messages : 208 Age : 33 Date d'inscription : 21/02/2007
Caractéristiques du membre Evolution: Atome Job: graphhisme, mapping XP: (20/20)
| Sujet: Re: 3D Isométrique façon Kingdom Hearts Ven 16 Mar 2007 - 18:35 | |
| oui et tu l'appele : game_character |
| | | maximilangeMatière
Messages : 128 Loisirs : RPG Maker XP,Internet,Theatre,Jeu vidéo Date d'inscription : 14/01/2007
Caractéristiques du membre Evolution: Atome Job: Un de peu de tout =) sauf les scripts encore pas mal de pb :/ ^^ XP: (20/20)
| Sujet: Re: 3D Isométrique façon Kingdom Hearts Ven 16 Mar 2007 - 20:11 | |
| OK mais .. le script ne marche pas ligne 38 . |
| | | .Sora.Atome
Messages : 47 Age : 32 Date d'inscription : 26/07/2007
Caractéristiques du membre Evolution: Atome Job: XP: (20/20)
| Sujet: Re: 3D Isométrique façon Kingdom Hearts Jeu 26 Juil 2007 - 14:38 | |
| pourrait - on me donner des charas de kh pur aller avec? |
| | | ninjaromyuMatière
Messages : 191 Age : 29 Loisirs : Foot , rpg maker , rap , l'humour et le théatre Date d'inscription : 06/05/2007
Caractéristiques du membre Evolution: Atome Job: XP: (20/20)
| Sujet: Re: 3D Isométrique façon Kingdom Hearts Jeu 26 Juil 2007 - 17:23 | |
| apres , il faut des ressources et il n'y en pas :'(
PS : si vous en avez mettez les merci |
| | | .Sora.Atome
Messages : 47 Age : 32 Date d'inscription : 26/07/2007
Caractéristiques du membre Evolution: Atome Job: XP: (20/20)
| Sujet: Re: 3D Isométrique façon Kingdom Hearts Dim 29 Juil 2007 - 14:10 | |
| bon alors voila jai fait un charas de sora pour se scripte et il marche bien alors si quelqun veut mon charas quil me le dise |
| | | LinkyuEmbryon
Messages : 621 Age : 32 Loisirs : Aucun, pour l'instant Date d'inscription : 10/06/2007
Caractéristiques du membre Evolution: Atome Job: Polyvalent XP: (20/20)
| Sujet: Re: 3D Isométrique façon Kingdom Hearts Dim 29 Juil 2007 - 14:24 | |
| necropost. c'est la mode en ce moment! .Sora., prouve moi quelque chose en me disant ce qu'est un necropost. |
| | | KazukiEmbryon
Messages : 604 Age : 29 Date d'inscription : 08/03/2007
Caractéristiques du membre Evolution: Atome Job: Graphisme, Events, Base de données XP: (20/20)
| Sujet: Re: 3D Isométrique façon Kingdom Hearts Dim 29 Juil 2007 - 14:47 | |
| Nan mais c'est pas vrai a la fin ! Quand est-ce que les nouveaux apprendrons a lire les règles ! Y'en a marre la ! C'est pas fais pour les chien les règles bon sang ... |
| | | Adel21Invité
| Sujet: Re: 3D Isométrique façon Kingdom Hearts Dim 29 Juil 2007 - 18:41 | |
| Mdr c'est clair, sachant que sur un autre fofo c'est bien pareil |
| | | KailInvité
| Sujet: Re: 3D Isométrique façon Kingdom Hearts Dim 29 Juil 2007 - 19:25 | |
| C'est normale personne ne respecte les règles.Surtout les nouveaux.
Bon cela devient du flood,donc revenons dans le vif du sujet:Ce script me serviras dans mon jeux.
Merci beaucoup.
Cordialement,Kail |
| | | SephirotInvité
| Sujet: Re: 3D Isométrique façon Kingdom Hearts Dim 29 Juil 2007 - 20:28 | |
| HS : Je te signal que toi aussi tu es nouveau ne l'oublie pas |
| | | BipBipBipAtome
Messages : 6 Date d'inscription : 29/07/2007
| Sujet: Re: 3D Isométrique façon Kingdom Hearts Lun 30 Juil 2007 - 8:58 | |
| H.S : Je vous signale que vous étiez tous nouveaux, avant. Tout comme moi. Enfin bon, ce script me servira surement ... |
| | | SephirotInvité
| Sujet: Re: 3D Isométrique façon Kingdom Hearts Lun 30 Juil 2007 - 9:43 | |
| H.S :ecoute moi je n'ai pas fais la réfléction des nouveaux, c'esta Kail qu'il faut dire ça!
Ce script sert à marcher en diagonale c'est ça? |
| | | seb88Matière
Messages : 257 Age : 32 Loisirs : Guitare Ordi Making =D Date d'inscription : 15/01/2007
Caractéristiques du membre Evolution: Atome Job: Event XP: (20/20)
| Sujet: Re: 3D Isométrique façon Kingdom Hearts Lun 30 Juil 2007 - 19:19 | |
| oui c'est bien ça tu marche en diagonale avec un perso qui regarde dans la bonne direction c'est plus préci que le script 8direction mais plus chiant vu qu'on a pas de chara adapté(on doit les fair soit même) |
| | | KolinichuAtome
Messages : 36 Age : 33 Loisirs : Médecine, science, jeux vidéos, création, mangas, un peu de tout quoi! Date d'inscription : 07/07/2007
Caractéristiques du membre Evolution: Atome Job: XP: (20/20)
| Sujet: Re: 3D Isométrique façon Kingdom Hearts Lun 30 Juil 2007 - 23:28 | |
| Une screen serait bien s'aimable! Et aussi, il y a un bug à la ligne 38, j'ai tout essayer mais, rien à faire... |
| | | ChildrenMolécule
Messages : 84 Age : 30 Loisirs : Rpg, making. Date d'inscription : 30/12/2006
| Sujet: Re: 3D Isométrique façon Kingdom Hearts Jeu 2 Aoû 2007 - 11:05 | |
| Bonne chance pour faire les ressources!
----------------- Ne me dites pas que je fait du nécropost, ça va m'énervé, un post c'est pas fait pour durer 2 semaines! Et il y a erncore des posts qui datent et qui n'en reste pas moins interressant. |
| | | ninjaromyuMatière
Messages : 191 Age : 29 Loisirs : Foot , rpg maker , rap , l'humour et le théatre Date d'inscription : 06/05/2007
Caractéristiques du membre Evolution: Atome Job: XP: (20/20)
| Sujet: Re: 3D Isométrique façon Kingdom Hearts Jeu 2 Aoû 2007 - 13:13 | |
| Salut , je connais se script Et il ne marches pas Pour se qui on fait des modifications , mettez le script sans bug svp ! merci
ps : les ressources sont tres LONG a faire , mais c'est pas si dur que sa! |
| | | Thrax37Matière
Messages : 302 Age : 33 Loisirs : On se le demande... Qu'est-ce que je fais là ? Date d'inscription : 01/11/2006
Caractéristiques du membre Evolution: Atome Job: XP: (20/20)
| Sujet: Re: 3D Isométrique façon Kingdom Hearts Jeu 2 Aoû 2007 - 16:51 | |
| VOILA LA REPARATION ! (C'est bizarre il y avait des endroits pas écrit en Ruby/RGSS) J'espère juste que mes modifs n'ont pas affecté le fonctionnement original du script. - Code:
-
#============================================================================== # ** Game_Character (Modification) #------------------------------------------------------------------------------ # This class deals with characters. It's used as a superclass for the # Game_Player and Game_Event classes. #==============================================================================
DIR_8_FRAMES = 8 # This holds the number of motion frames when walking DIR_8_STAND = true # This determines if separate frame used for standing
class Game_Character
attr_reader :step_anime attr_reader :stop_count
#-------------------------------------------------------------------------- # * Frame Update #-------------------------------------------------------------------------- def update # Branch with jumping, moving, and stopping if jumping? update_jump elsif moving? update_move else update_stop end # If animation count exceeds maximum value # * Maximum value is move speed * 1 taken from basic value 18 if @anime_count > 18 - @move_speed * 2 # If stop animation is OFF when stopping if not @step_anime and @stop_count > 0 # Return to original pattern @pattern = @original_pattern # If stop animation is ON when moving else # Update pattern @pattern = @pattern % DIR_8_FRAMES end # Clear animation count @anime_count = 0 end # If waiting if @wait_count > 0 # Reduce wait count @wait_count -= 1 return end # If move route is forced if @move_route_forcing # Custom move move_type_custom return end # When waiting for event execution or locked if @starting or lock? # Not moving by self return end # If stop count exceeds a certain value (computed from move frequency) if @stop_count > (40 - @move_frequency * 2) * (6 - @move_frequency) # Branch by move type case @move_type when 1 # Random move_type_random when 2 # Approach move_type_toward_player when 3 # Custom move_type_custom end end end
#-------------------------------------------------------------------------- # * Move Lower Left (Rewritten for diagonal animation) #-------------------------------------------------------------------------- def move_lower_left unless @direction_fix @direction = 1 end if passable?(@x, @y, 2) and passable?( @x, @y, 4) or passable?(@x, @y, 4) and passable?(@x - 1, @y, 2) turn_downleft @x -= 1 @y = 1 increase_steps end end
#-------------------------------------------------------------------------- # * Move Lower Right (Rewritten for diagonal animation) #-------------------------------------------------------------------------- def move_lower_right unless @direction_fix @direction = 3 end if (passable?(@x, @y, 2) and passable?(@x, @y, 6)) or (passable?(@x, @y, 6) and passable?(@x, @y, 2)) turn_downright @x = 1 @y = 1 increase_steps end end
#-------------------------------------------------------------------------- # * Move Upper Left (Rewritten for diagonal animation) #-------------------------------------------------------------------------- def move_upper_left unless @direction_fix @direction = 7 end if (passable?(@x, @y, 8) and passable?(@x, @y - 1, 4)) or (passable?(@x, @y, 4) and passable?(@x - 1, @y, 8)) turn_upleft @x -= 1 @y -= 1 increase_steps end end
#-------------------------------------------------------------------------- # * Move Upper Left (Rewritten for diagonal animation) #-------------------------------------------------------------------------- def move_upper_right unless @direction_fix @direction = 9 end if (passable?(@x, @y, 8) and passable?(@x, @y - 1, 6)) or (passable?(@x, @y, 6) and passable?(@x, @y, 8))
turn_upright @x = 1 @y -= 1 increase_steps end end
#-------------------------------------------------------------------------- # * Turn Up Left (Rewritten for diagonal animation) #-------------------------------------------------------------------------- def turn_upleft unless @direction_fix @direction = 7 @stop_count = 0 end end
#-------------------------------------------------------------------------- # * Turn Up Right (Rewritten for diagonal animation) #-------------------------------------------------------------------------- def turn_upright unless @direction_fix @direction = 9 @stop_count = 0 end end
#-------------------------------------------------------------------------- # * Turn Down Left (Rewritten for diagonal animation) #-------------------------------------------------------------------------- def turn_downleft unless @direction_fix @direction = 1 @stop_count = 0 end end
#-------------------------------------------------------------------------- # * Turn Down Right (Rewritten for diagonal animation) #-------------------------------------------------------------------------- def turn_downright unless @direction_fix @direction = 3 @stop_count = 0 end end end
#============================================================================== # ** Game_Player #------------------------------------------------------------------------------ # This class handles the player. Its functions include event starting # determinants and map scrolling. Refer to "$game_player" for the one # instance of this class. #==============================================================================
class Game_Player < Game_Character
#-------------------------------------------------------------------------- # * Frame Update #-------------------------------------------------------------------------- def update # Remember whether or not moving in local variables last_moving = moving? # If moving, event running, move route forcing, and message window # display are all not occurring unless moving? or $game_system.map_interpreter.running? or @move_route_forcing or $game_temp.message_window_showing
# Move player in the direction the directional button is being pressed # Rewritten for diagonal animation case Input.dir8 when 2 move_down when 4 move_left when 6 move_right when 8 move_up when 7 move_upper_left when 9 move_upper_right when 3 move_lower_right when 1 move_lower_left end end
# Remember coordinates in local variables last_real_x = @real_x last_real_y = @real_y super # If character moves down and is positioned lower than the center # of the screen if @real_y > last_real_y and @real_y - $game_map.display_y > CENTER_Y # Scroll map down $game_map.scroll_down(@real_y - last_real_y) end # If character moves left and is positioned more let on-screen than # center if @real_x < last_real_x and @real_x - $game_map.display_x < CENTER_X # Scroll map left $game_map.scroll_left(last_real_x - @real_x) end # If character moves right and is positioned more right on-screen than # center if @real_x > last_real_x and @real_x - $game_map.display_x > CENTER_X # Scroll map right $game_map.scroll_right(@real_x - last_real_x) end # If character moves up and is positioned higher than the center # of the screen if @real_y < last_real_y and @real_y - $game_map.display_y < CENTER_Y # Scroll map up $game_map.scroll_up(last_real_y - @real_y) end # If not moving unless moving? # If player was moving last time if last_moving # Event determinant is via touch of same position event result = check_event_trigger_here([1,2]) # If event which started does not exist if result == false # Disregard if debug mode is ON and ctrl key was pressed unless $DEBUG and Input.press?(Input::CTRL) # Encounter countdown if @encounter_count > 0 @encounter_count -= 1 end end end end # If C button was pressed if Input.trigger?(Input::C) # Same position and front event determinant check_event_trigger_here([0]) check_event_trigger_there([0,1,2]) end end end end
#============================================================================== # ** Sprite_Character #------------------------------------------------------------------------------ # This sprite is used to display the character.It observes the Game_Character # class and automatically changes sprite conditions. #==============================================================================
class Sprite_Character < RPG::Sprite
#-------------------------------------------------------------------------- # * Frame Update #-------------------------------------------------------------------------- def update super # If tile ID, file name, or hue are different from current ones if @tile_id != @character.tile_id or @character_name != @character.character_name or @character_hue != @character.character_hue # Remember tile ID, file name, and hue @tile_id = @character.tile_id @character_name = @character.character_name @character_hue = @character.character_hue # If tile ID value is valid 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 # If tile ID value is invalid else self.bitmap = RPG::Cache.character(@character.character_name, @character.character_hue) if DIR_8_STAND @cw = bitmap.width / (DIR_8_FRAMES) # Movement frames w/ stand else @cw = bitmap.width / (DIR_8_FRAMES) # Movement frames regular end @ch = bitmap.height / 8 # This sets for 8 directions self.ox = @cw / 2 self.oy = @ch end end # Set visible situation self.visible = (not @character.transparent) # If graphic is character if @tile_id == 0 # Set rectangular transfer
# Set horizontal transfer (animation frames) if not @character.step_anime and @character.stop_count > 0 sx = (@character.pattern) * @cw else sx = (@character.pattern) * @cw end # If you want the standing frame to be PART of the walking animation... # like the default sprites (very plain...) comment out the above set # of statements EXCEPT sx = (@character.pattern) * @cw
# Set vertical transfer (direction) dir = @character.direction # These routines allow for eight dec = (dir == 7 or dir== 9) ? 3 : 1 # directional movement. I forgot sy = (dir - dec) * @ch # how I came up with it. Really.
self.src_rect.set(sx, sy, @cw, @ch) end # Set sprite coordinates self.x = @character.screen_x self.y = @character.screen_y self.z = @character.screen_z(@ch) # Set opacity level, blend method, and bush depth self.opacity = @character.opacity self.blend_type = @character.blend_type self.bush_depth = @character.bush_depth # Animation if @character.animation_id != 0 animation = $data_animations[@character.animation_id] animation(animation, true) @character.animation_id = 0 end end end |
| | | ninjaromyuMatière
Messages : 191 Age : 29 Loisirs : Foot , rpg maker , rap , l'humour et le théatre Date d'inscription : 06/05/2007
Caractéristiques du membre Evolution: Atome Job: XP: (20/20)
| Sujet: Re: 3D Isométrique façon Kingdom Hearts Jeu 2 Aoû 2007 - 18:11 | |
| |
| | | MastMatière
Messages : 148 Date d'inscription : 16/11/2006
Caractéristiques du membre Evolution: Atome Job: Maping, conception tileset XP: (20/20)
| Sujet: Re: 3D Isométrique façon Kingdom Hearts Ven 10 Aoû 2007 - 0:45 | |
| Ouaip, ben à propo des ressources, voilà un ptit tuto sympa pour en faire soi même : http://www.rpg-creation.com/forums/viewtopic.php?t=7957&highlight=isom%E9trie |
| | | DidjiMatière
Messages : 170 Age : 33 Loisirs : Jeux vidéos, lecture, marche à pied... Date d'inscription : 12/04/2007
Caractéristiques du membre Evolution: Atome Job: Scenariste, graphiste, mappeur, etc... (tout sauf scripteur!) XP: (20/20)
| Sujet: Re: 3D Isométrique façon Kingdom Hearts Jeu 30 Aoû 2007 - 20:50 | |
| Bonjour, excusez moi, mais le script ne marche pas très bien malgré les modifications, le
personnage se déplace mais sans aucune animation et en plus il part se mettre dans le
coin haut-gauche de la map lorsque j'essaie de me déplacer en diagonale haut-droite,
bas-gauche, et bas-droite.
Si quequ'un pouvait arranger ça, ce serait sympas, merci d'avance. |
| | | Contenu sponsorisé
| Sujet: Re: 3D Isométrique façon Kingdom Hearts | |
| |
| | | | 3D Isométrique façon Kingdom Hearts | |
|
Sujets similaires | |
|
Page 1 sur 1 | |
| Permission de ce forum: | Vous ne pouvez pas répondre aux sujets dans ce forum
| |
| |
| |
|