Connexion

Nom d'utilisateur:

Mot de passe:

Connexion automatique


 S'enregistrer
 

RPG MAKER VX - RGSS2 :: Voir le sujet précédent :: Voir le sujet suivant  
Poster un nouveau sujet   Répondre au sujet [Aide] Map en Isometrique Aller à la page Précédente  1, 2, 3, 4  
Raytwo-x
Koruldia Warrior



Inscrit le: 27 Juin 2010
Messages: 280

778 korulz

Objets

MessagePosté le: Sam Juil 10, 2010 10:42 pm    Sujet du message: Répondre en citant

Bon, j'ai grillé l'arnaque du script : il a pas fait tant que ça le mec.

Dans les mouvements que les persos à le droit, il y en a DEJA 8 à la base dans VX. Il a juste changer les déplacements par case par ceux en diagonale en faites.

( Bon, je dis "il a juste", mais j'y avais pas penser.. xD )

Bon, je continue, même si j'la sens mal...

Quand au script de déplacement 8 directions le Watchinofoye ( je suis pas sur que c'est lui qui l'a posté ), c'est EXACTEMENT le même, version XP... >< J'suis pas dans la m**** , me faudrait un déplacement par pixel pour bien faire.
Revenir en haut de page
Voir le profil de l'utilisateur Envoyer un message privé MSN Messenger
Watchinofoye
Koruldia God Warrior



Inscrit le: 11 Oct 2008
Messages: 748

37 korulz

Objets

MessagePosté le: Sam Juil 10, 2010 11:43 pm    Sujet du message: Répondre en citant

Non c'est pas moi, j'ai pas posté de script.
_________________
Revenir en haut de page
Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web de l'utilisateur MSN Messenger
Raytwo-x
Koruldia Warrior



Inscrit le: 27 Juin 2010
Messages: 280

778 korulz

Objets

MessagePosté le: Dim Juil 11, 2010 12:35 am    Sujet du message: Répondre en citant

Ouais, voila, après vérification, c'était Giro, désolé Watch ! Mecontent

Bon, d'après ce que je vois, je suis pas assez "qualifier" pour te faire ton script, mais j'ai tester ça, et c'est exactement les déplacements que tu veux, sauf que.. c'est spécial.

Bref, je te laisse voir en cliquant ici
Revenir en haut de page
Voir le profil de l'utilisateur Envoyer un message privé MSN Messenger
xtincell
Koruldia God Warrior



Inscrit le: 24 Juil 2009
Messages: 622
Localisation: kelkepart...
1015 korulz

Objets

MessagePosté le: Dim Juil 11, 2010 5:10 pm    Sujet du message: Répondre en citant

Je l'ai deja testé et il ne supporte pas le mapping en image et panorama (y a un bug et un deplacement de 1 carreau a un moment donnée qui me salope tout le boulot) C'est pourquoi je voulais un script de deplacement exclusivement (si tu peux isoler le script de deplacement du script de mapping en iso ce sera bon)
_________________
-Ma derniere crea : Wallpaper Zangetsu
-
Revenir en haut de page
Voir le profil de l'utilisateur Envoyer un message privé Envoyer un e-mail MSN Messenger
Raytwo-x
Koruldia Warrior



Inscrit le: 27 Juin 2010
Messages: 280

778 korulz

Objets

MessagePosté le: Mer Juil 14, 2010 12:42 pm    Sujet du message: Répondre en citant

Juste pour dire que j'ai réussi à isoler les déplacements du script, mais je dois encore en changer l'angle par contre...

Ca réveillera p'tet un peu le topic au passage :p
C'est juste pour te montrer que j'ai chercher un minimum xD

Edit : tiens, t'as changer ton avatar en émo souriant?
Revenir en haut de page
Voir le profil de l'utilisateur Envoyer un message privé MSN Messenger
xtincell
Koruldia God Warrior



Inscrit le: 24 Juil 2009
Messages: 622
Localisation: kelkepart...
1015 korulz

Objets

MessagePosté le: Mer Juil 14, 2010 12:54 pm    Sujet du message: Répondre en citant

Mon sauveur, gloire a toi Tres heureux J'attend le resultat final avec impatience...
Bref tu connais deja comment fonctionne le concept d'angle d'iso donc je reviendrai pas dessus par contre j'ai un mini soucis. Je souhaite creer un deplacement nolimit qui permet de se deplacer suivant des coordonnées negatives. Je crois que par defaut le 0-0 c'est la case en haut a gauche, je voulais pouvoir redefinir l'origine pour pouvoir appliquer le deplacemetn (tout en conservant les regles de collision). C'est un des soucis majeur du script de deplacement, a moins que t'ai trouvé une autre solution...j'attend de voir...

edit : ah t'as remarqué aussi, j'ai voulu faire un avatar qui s'eloigne completement du premier pour marquer un changement

_________________
-Ma derniere crea : Wallpaper Zangetsu
-
Revenir en haut de page
Voir le profil de l'utilisateur Envoyer un message privé Envoyer un e-mail MSN Messenger
Raytwo-x
Koruldia Warrior



Inscrit le: 27 Juin 2010
Messages: 280

778 korulz

Objets

MessagePosté le: Mer Juil 14, 2010 1:03 pm    Sujet du message: Répondre en citant

La modification que j'ai fais n'utilise plus le système d'events bizarre et tout ce bordel, mais je vois pas trop de quoi tu parles en faites...

Bref, voila ton code

A nommer comme tu veux ( de base, il s'apelle Isometric(Basic) )
Code:
#=========================================== ===================================
# ■ Scene_Title
#================================================= =============================
class Scene_Title
  alias main_orig main
  #------------------------------------------------- -------------------------
  # ● Loads MapInfos so that Iso map id's can be loaded according to the current map.
  #------------------------------------------------- -------------------------
  def main
    $data_map_info        = load_data("Data/MapInfos.rvdata")
    main_orig
  end
end

#================================================= =============================
# ■ Game_Character
#================================================= =============================
class Game_Character
  #------------------------------------------------- -------------------------
  # ● Update the position of the characters to the screen according to x,y in isometric
  #------------------------------------------------- -------------------------

  def screen_x
      return ((@real_x - @real_y)/8 + (32 * $game_map.height) - 0 - $game_map.display_x/8) - 16
  end
  #------------------------------------------------- -------------------------

  def screen_y
      y = (@real_y + @real_x) / 16 + 24 - $game_map.display_y/8
      if @jump_count >= @jump_peak
        n = @jump_count - @jump_peak
      else
        n = @jump_peak - @jump_count
      end
      return y - (@jump_peak * @jump_peak - n * n) / 2
    end
  end

class Game_Player < Game_Character
  #------------------------------------------------- -------------------------
  # * Update Scroll
  #------------------------------------------------- -------------------------

  def update_scroll(last_real_x, last_real_y)
      disp_x = screen_x + $game_map.display_x/8
      disp_y = screen_y + $game_map.display_y/8
      if CENTER_Y - (8*disp_y - $game_map.display_y) > 0
        $game_map.scroll_up(CENTER_Y - (8*disp_y - $game_map.display_y))
      end
      if CENTER_Y - (8*disp_y - $game_map.display_y) < 0 
        $game_map.scroll_down(8*disp_y - $game_map.display_y - CENTER_Y)
      end
      if CENTER_X - (8*disp_x - $game_map.display_x) > 0
        $game_map.scroll_left(CENTER_X - (8*disp_x - $game_map.display_x))
      end
      if CENTER_X - (8*disp_x - $game_map.display_x) < 0
        $game_map.scroll_right(8*disp_x - $game_map.display_x - CENTER_X)
      end
    end
 
  #------------------------------------------------- -------------------------
  # * Set Map Display Position to Center of Screen
  #     x : x-coordinate
  #     y : y-coordinate
  #------------------------------------------------- -------------------------

  def center(x, y)
      update_scroll(@real_x, @real_y)
  end
end


Et pour l'autre, tu peux l'appeller genre Pixel Movement, a mettre en dessous de celui que tu as.

Code:
#=========================================== ===================================
#  4 DIRECTIONAL PIXEL MOVEMENT - Player only!
#================================================= =============================

#================================================= =============================
# ● Game_Player
#================================================= =============================
class Game_Player < Game_Character
  #------------------------------------------------- -------------------------
  # ● Initialize
  #------------------------------------------------- -------------------------
  alias gc_pix_init initialize
  def initialize
    gc_pix_init
    @x = 0.0
    @y = 0.0
    @real_x = 0.0
    @real_y = 0.0
    @inc_steps = 0
  end
  #------------------------------------------------- -------------------------
  # * Increase Steps
  #------------------------------------------------- -------------------------
  alias gc_pix_inc_stps increase_steps
  def increase_steps
    if @inc_steps >= 4
      gc_pix_inc_stps
      @inc_steps = 0
    else
      @inc_steps += 1
    end
  end
  #------------------------------------------------- -------------------------
  # * Move Down
  #     turn_ok : Allows change of direction on the spot
  #------------------------------------------------- -------------------------
  def move_down(turn_ok = true)
    if passable?(@x.to_i, @y.to_i+1)                  # Passable
      turn_down
      @y += 1.0/8
      @real_y = (@y-1.0/6)*256
      increase_steps
      @move_failed = false
    else                                    # Impassable
      if @y < @y.to_i+1-(1.0/4) #if there is still area to move but next square is impassable
        turn_down
        @y += 1.0/8
        @real_y = (@y-1.0/6)*256
        increase_steps
        @move_failed = false
        return
      end
     
      turn_down if turn_ok
      check_event_trigger_touch(@x.to_i, @y.to_i+1)   # Touch event is triggered?
      @move_failed = true
    end
  end
  #------------------------------------------------- -------------------------
  # * Move Left
  #     turn_ok : Allows change of direction on the spot
  #------------------------------------------------- -------------------------
  def move_left(turn_ok = true)
    if passable?(@x.to_i-1, @y.to_i)                  # Passable
      turn_left
      @x -= 1.0/4
      if $game_map.loop_horizontal?
        @y += $game_map.width
        @y %= $game_map.width
      end
      @real_x = (@x+1.0/4)*256
      increase_steps
      @move_failed = false
    else                                    # Impassable
      if @x.to_i < @x #if there is still area to move but next square is impassable
        turn_left
        @x -= 1.0/4
        if $game_map.loop_horizontal?
          @y += $game_map.width
          @y %= $game_map.width
        end
        @real_x = (@x+1.0/4)*256
        increase_steps
        @move_failed = false
        return
      end
      turn_left if turn_ok
      check_event_trigger_touch(@x.to_i-1, @y.to_i)   # Touch event is triggered?
      @move_failed = true
    end
  end
  #------------------------------------------------- -------------------------
  # * Move Right
  #     turn_ok : Allows change of direction on the spot
  #------------------------------------------------- -------------------------
  def move_right(turn_ok = true)
    if passable?(@x.to_i+1, @y.to_i)                  # Passable
      turn_right
      @x += 1.0/4
      if $game_map.loop_horizontal?
        @y += $game_map.width
        @y %= $game_map.width
      end
      @real_x = (@x-1.0/4).to_f*256
      increase_steps
      @move_failed = false
    else                                    # Impassable
      if @x < @x.to_i+1-(1.0/4) #if there is still area to move but next square is impassable
        turn_right
        @x += 1.0/4
        if $game_map.loop_horizontal?
          @y += $game_map.width
          @y %= $game_map.width
        end
        @real_x = (@x-1.0/4).to_f*256
        increase_steps
        @move_failed = false
        return
      end
     
      turn_right if turn_ok
      check_event_trigger_touch(@x.to_i+1, @y.to_i)   # Touch event is triggered?
      @move_failed = true
    end
  end
  #------------------------------------------------- -------------------------
  # * Move up
  #     turn_ok : Allows change of direction on the spot
  #------------------------------------------------- -------------------------
  def move_up(turn_ok = true)
    if passable?(@x.to_i, @y.to_i-1)                  # Passable
      turn_up
      @y -= 1.0/4
      if $game_map.loop_vertical?
        @y += $game_map.height
        @y %= $game_map.height
      end
      @real_y = (@y+1.0/4)*256
      increase_steps
      @move_failed = false
    else                                    # Impassable
      if @y.to_i < @y #if there is still area to move but next square is impassable
        turn_up
        @y -= 1.0/4
        if $game_map.loop_vertical?
          @y += $game_map.height
          @y %= $game_map.height
        end
        @real_y = (@y+1.0/4)*256
        increase_steps
        @move_failed = false
        return
      end
      turn_up if turn_ok
      check_event_trigger_touch(@x.to_i, @y.to_i-1)   # Touch event is triggered?
      @move_failed = true
    end
  end
  #------------------------------------------------- -------------------------
  # * Determine if Same Position Event is Triggered
  #     triggers : Trigger array
  #------------------------------------------------- -------------------------
  def check_event_trigger_here(triggers)
    return false if $game_map.interpreter.running?
    result = false
    for event in $game_map.events_xy(@x.to_i, @y.to_i)
      if triggers.include?(event.trigger) and event.priority_type != 1
        event.start
        result = true if event.starting
      end
    end
    return result
  end
  #------------------------------------------------- -------------------------
  # * Determine if Front Event is Triggered
  #     triggers : Trigger array
  #------------------------------------------------- -------------------------
  def check_event_trigger_there(triggers)
    return false if $game_map.interpreter.running?
    result = false
    front_x = $game_map.x_with_direction(@x.to_i, @direction)
    front_y = $game_map.y_with_direction(@y.to_i, @direction)
    for event in $game_map.events_xy(front_x, front_y)
      if triggers.include?(event.trigger) and event.priority_type == 1
        event.start
        result = true
      end
    end
    if result == false and $game_map.counter?(front_x, front_y)
      front_x = $game_map.x_with_direction(front_x, @direction)
      front_y = $game_map.y_with_direction(front_y, @direction)
      for event in $game_map.events_xy(front_x, front_y)
        if triggers.include?(event.trigger) and event.priority_type == 1
          event.start
          result = true
        end
      end
    end
    return result
  end
end


Je viens d'essayer sur ton projet, ça rend pas mal je trouve. Juste qu'il faudrait que tu règles un peu mieux ton système de collisions, car on peut facilement sortir de la map !

Bref, tu me dis ce que t'en pense, et si il y a un truc à changer, je peux toujours tenter, ou un autre.
Revenir en haut de page
Voir le profil de l'utilisateur Envoyer un message privé MSN Messenger
xtincell
Koruldia God Warrior



Inscrit le: 24 Juil 2009
Messages: 622
Localisation: kelkepart...
1015 korulz

Objets

MessagePosté le: Mer Juil 14, 2010 1:14 pm    Sujet du message: Répondre en citant

Rien qu'en regardant (ouais j'ai l'oeil) ca l'air pas mal... Je vais voir le resultat tout a k'heure sur mon pc et je noterai les resultats. Dans l'ensemble, c'est du tres bon boulot. Je te remercie beaucoup. voila qq korulz pour ton travail acharné Tres heureux
_________________
-Ma derniere crea : Wallpaper Zangetsu
-
Revenir en haut de page
Voir le profil de l'utilisateur Envoyer un message privé Envoyer un e-mail MSN Messenger
Raytwo-x
Koruldia Warrior



Inscrit le: 27 Juin 2010
Messages: 280

778 korulz

Objets

MessagePosté le: Mer Juil 14, 2010 1:18 pm    Sujet du message: Répondre en citant

Huhu, merci grand king Tres heureux

Bien que bon, "travail", c'est surtout repérer les endroits, les isoler, corriger deux trois problèmes qui survenaient quand je supprimais des fonctions inutiles... Mais il m'a fallu du temps pour comprendre ( alors que c'était pas super compliqué en faite >< )

En gros, le personnage se déplace pixel par pixel, exactement dans la lignée des cases de ta map, mais il peut en même temps passer à travers les "cases" vu que c'est du pixel par pixel. Ça permet donc un déplacement plus libre, moins "rpg maker style"
Revenir en haut de page
Voir le profil de l'utilisateur Envoyer un message privé MSN Messenger
xtincell
Koruldia God Warrior



Inscrit le: 24 Juil 2009
Messages: 622
Localisation: kelkepart...
1015 korulz

Objets

MessagePosté le: Mer Juil 14, 2010 1:26 pm    Sujet du message: Répondre en citant

C'est justement ce que je recherchais petit scarabée. Les collisions, j'en fais mon affaire. un bon petit script pourri placé au bon endroit et ca devrai le faire Cependant, j'aurai beaucoup de boulot a partir de maintenant pour les charset et les map iso. Ca va etre zoli zoli. Pense a produire un plateau de tableau pour ton perso ca vaut pour tout le monde Pendant ce temps moi j'ai synthetise toutes les info que j'ai sur format, je rend le tout un minimum coherent je stylise et j'organise les sceance de "pixelizing" !

Ca risque d'etre un peu long mais y aura une petite demo graphic-system magic system(?) samedi ou lundi (j'ai fixé une date a titre indicatif, y a des risques pour que ca sorte plus tard ... ou plus tôt :p)

_________________
-Ma derniere crea : Wallpaper Zangetsu
-
Revenir en haut de page
Voir le profil de l'utilisateur Envoyer un message privé Envoyer un e-mail MSN Messenger
Raytwo-x
Koruldia Warrior



Inscrit le: 27 Juin 2010
Messages: 280

778 korulz

Objets

MessagePosté le: Mer Juil 14, 2010 1:40 pm    Sujet du message: Répondre en citant

Pfiouuu, j'ai aucune idée pour un plateau je dois t'avouer... Tu m'en demandes trop la ! ( j'ai pas une imagination débordante, dommage pour moi )

J'imagine bien une zone de ce style :


Image redimensionnée

( ouais, je sais, j'adore trop Soul Eater xD mais le look de la scène est assez bien foutu, ça fais "monde dévasté", mais j'arrive pas à m'en faire un plateau )
Revenir en haut de page
Voir le profil de l'utilisateur Envoyer un message privé MSN Messenger
xtincell
Koruldia God Warrior



Inscrit le: 24 Juil 2009
Messages: 622
Localisation: kelkepart...
1015 korulz

Objets

MessagePosté le: Mer Juil 14, 2010 2:16 pm    Sujet du message: Répondre en citant

Je vois le genre. je verrai ce que ca donne in game... je vais voir ce que je pourrai "modeliser"...
edit : Poste moi ca dans la section approprié s'il te plait et dans les regles. Pour que je puisse y voir un peu plus clair.

edit: ok je viens de tester le script. Joli boulot. Les evenements sont affectés, c'est pour ca qu'il y a un probleme je vais redefenir le tableau de positionnement au moment de bosser. Tu as conservé la gestion de l'altitude dans les deplacements ?

_________________
-Ma derniere crea : Wallpaper Zangetsu
-
Revenir en haut de page
Voir le profil de l'utilisateur Envoyer un message privé Envoyer un e-mail MSN Messenger
Raytwo-x
Koruldia Warrior



Inscrit le: 27 Juin 2010
Messages: 280

778 korulz

Objets

MessagePosté le: Mer Juil 21, 2010 6:33 am    Sujet du message: Répondre en citant

Gestion de l'altitude? Je savais même pas qu'il y en avait une, donc je pense pas que je l'ai laissée dedans.. Après tout ,j'ai fais que séparer la partie qui t'intéressait, et arranger le script pour pas qu'il y ait d'erreurs.
Revenir en haut de page
Voir le profil de l'utilisateur Envoyer un message privé MSN Messenger
xtincell
Koruldia God Warrior



Inscrit le: 24 Juil 2009
Messages: 622
Localisation: kelkepart...
1015 korulz

Objets

MessagePosté le: Mer Juil 21, 2010 9:46 am    Sujet du message: Répondre en citant

Je vais voir ce que ça donne mais je suis pas sur que tu l'ais conservé mais rassure toi, le modèle final est stable c'est déjà ça (je pense d'ailleurs que c'était cette gestion de l'altitude qui provoquait le bug que j'observait lors de mes essai de stabilisation. Je vous tiens au courant.

bref, le modèle de dessin final es au point, pensez a revisiter les topics de préparations du projet...

_________________
-Ma derniere crea : Wallpaper Zangetsu
-
Revenir en haut de page
Voir le profil de l'utilisateur Envoyer un message privé Envoyer un e-mail MSN Messenger
Raytwo-x
Koruldia Warrior



Inscrit le: 27 Juin 2010
Messages: 280

778 korulz

Objets

MessagePosté le: Mer Juil 21, 2010 1:22 pm    Sujet du message: Répondre en citant

Ha bah tant mieux alors, content d'avoir pu t'aider =)
Ouaip, j'pense aussi qui avait un truc qui gênait avec cette gestion, le perso se décalait quand tu passais au dessus d'un certain point, mais ça le fait plus, donc ça va. :p

Et désolé de répondre si tard, j'avais pas vu que t'avais édité ton post en faites. ><
Revenir en haut de page
Voir le profil de l'utilisateur Envoyer un message privé MSN Messenger
Poster un nouveau sujet   Répondre au sujet
KORU-HUB Index -> RPG MAKER VX - RGSS2 Messages depuis:   
Page 4 sur 4
Aller à la page Précédente  1, 2, 3, 4

Topsite Pokémon Trashtop game makingtop pokemon game making
Topsite Emutoptop pokebasetop pokemon france
Please vote!
© 2002-2010 Koruldia
Keywords : pokemon koruldia rpg making pokémon rpg-maker vx rgss game-making pocket monsters
Conditions d'utilisation du site | Nous contacter | FAQ | Plan du site