- SkilloStaffeux retraité
- Nombre de messages : 526
Age : 35
Localisation : Rennes
Distinction : J'aime ce gars
(by Coco')
Scripteur apprenti, futur Berka !
(par Tretian)
Membre anonyme de la communauté, caché derrière son PC
(???)
super prof de script
[Dudu']
Résident permanent de la Chat Box
[Autoproclamé]
Adepte du XDDD [Yak' ]
Fanatique hystérique de Raymond le français [Un connu]
Date d'inscription : 19/01/2008
Se téléporter à l'interrieur d'un vaisseau
Jeu 25 Nov 2010 - 15:17
Salut! Et non je ne suis pas mort ^^.
Voici un script que j'ai fait vous permettant de rentrer à l'intérieur du vaisseau (le véhicule volant) lors de l'appuie de Echap.
Toutes les explications se trouvent dans le script.
Script:
Screen: pas d'utilité
Demo: à venir si besoin
Voilà laissez vos coms
Ps: pour tous ceux qui diront que c'est faisable facilement en évent, je m'en fiche j'avais envi.
Voici un script que j'ai fait vous permettant de rentrer à l'intérieur du vaisseau (le véhicule volant) lors de l'appuie de Echap.
Toutes les explications se trouvent dans le script.
Script:
- Spoiler:
- Code:
#==============================================================================
# **Teleport_In_Airship fait par Skillo
#------------------------------------------------------------------------------
# Ce script vous permet de vous téléporter dans une map définie, aux coordonné définies lorsque
# vous appuyez sur B (Echap par default) .
#==============================================================================
module AirShipTeleport
# Pour fonctionner ce script nécessite un evenement commun à declenchement automatique via
# un interrupteur défini plus bas et contenant les commandes suivantes:
# |> Attendre : 1 Frames
# |> Afficher l'écran en fondu
# |> Opération : Interrupteur [ id de l'interrupteur défini plus pas] Désactivé
# Deplus pour sortir du vaisseau, il faut faire un event avec un appel de script contenant:
# $game_map.exit_airship
# et le joueur sera automatiquement téléporté à la map d'origine.
# Ici sera définie l'id de la map faisant réference au vaisseau
# Map_id = id de la map
Map_id = 2
# Ici sera définie la coordonnée X après la téléportation du joueur sur la map
# faisant réference au vaisseau.
# Map_x = Coordonnée X sur la map
Map_x = 8
# Ici sera définie la coordonnée Y après la téléportation du joueur sur la map
# faisant réference au vaisseau.
# Map_y = Coordonnée Y sur la map
Map_y = 8
# Ici sera définie la direction du joeur après la téléportation du joueur sur la map
# faisant réference au vaisseau.
# Map_direction = 2:bas, 4:gauche, 6:droite, 8:haut,
Map_direction = 8
# Ici sera définie l'id de l'interrupteur appelant l'evenement commun nécessaire au fonctionnement de ce script
# Switch = id de l'interrupteur
Switch = 1
end
#==============================================================================
# ** Game_System
#------------------------------------------------------------------------------
# This class handles system-related data. Also manages vehicles and BGM, etc.
# The instance of this class is referenced by $game_system.
#==============================================================================
class Game_System
#--------------------------------------------------------------------------
# * Public Instance Variables
#--------------------------------------------------------------------------
attr_accessor :actor_map_id
attr_accessor :actor_map_x
attr_accessor :actor_map_y
attr_accessor :actor_map_direction
#--------------------------------------------------------------------------
# * Object Initialization
#--------------------------------------------------------------------------
alias skillo_airship_initialize initialize
def initialize
skillo_airship_initialize
@actor_map_id = 0
@actor_map_x = 0
@actor_map_y =0
@actor_map_direction = 0
end
end
#==============================================================================
# ** Scene_Map
#------------------------------------------------------------------------------
# This class performs the map screen processing.
#==============================================================================
class Scene_Map < Scene_Base
#--------------------------------------------------------------------------
# * Determine if Menu is Called due to Cancel Button
#--------------------------------------------------------------------------
def update_call_menu
if Input.trigger?(Input::B)
if $game_player.in_airship? and !$game_temp.in_battle
$game_map.go_in_airship
else
return if $game_map.interpreter.running? # Event being executed?
return if $game_system.menu_disabled # Menu forbidden?
$game_temp.menu_beep = true # Set SE play flag
$game_temp.next_scene = "menu"
end
end
end
end
#==============================================================================
# ** Game_Map
#------------------------------------------------------------------------------
# This class handles maps. It includes scrolling and passage determination
# functions. The instance of this class is referenced by $game_map.
#==============================================================================
class Game_Map
#--------------------------------------------------------------------------
# * Go in Airship
#--------------------------------------------------------------------------
def go_in_airship
screen.start_fadeout(1)
screen.update
$game_system.actor_map_id = @map_id
$game_system.actor_map_x = $game_player.x
$game_system.actor_map_y = $game_player.y
$game_system.actor_map_direction = $game_player.direction
map_id = AirShipTeleport::Map_id
x = AirShipTeleport::Map_x
y = AirShipTeleport::Map_y
direction = AirShipTeleport::Map_direction
$game_player.quick_get_off_airship
$game_player.reserve_transfer(map_id, x, y, direction)
$game_switches[1] = true
end
#--------------------------------------------------------------------------
# * Exit Airship
#--------------------------------------------------------------------------
def exit_airship
screen.start_fadeout(1)
$game_player.get_on_airship
map_id = $game_system.actor_map_id
x = $game_system.actor_map_x
y = $game_system.actor_map_y
direction = $game_system.actor_map_direction
$game_player.reserve_transfer(map_id, x, y, direction)
$game_switches[1] = true
end
end
#==============================================================================
# ** Game_Player
#------------------------------------------------------------------------------
# This class handles maps. It includes event starting determinants and map
# scrolling functions. The instance of this class is referenced by $game_map.
#==============================================================================
class Game_Player < Game_Character
#--------------------------------------------------------------------------
# * Get Off Vehicle
# Assumes that the player is currently riding in a vehicle.
#--------------------------------------------------------------------------
def quick_get_off_airship
front_x = $game_map.x_with_direction(@x, @direction)
front_y = $game_map.y_with_direction(@y, @direction)
$game_map.vehicles[@vehicle_type].get_off # Get off processing
@vehicle_getting_off = true # Start getting off operation
@move_speed = 4 # Return move speed
@through = false # Passage OFF
@walking_bgm.play # Restore walking BGM
make_encounter_count # Initialize encounter
end
#--------------------------------------------------------------------------
# * Board Airship
#--------------------------------------------------------------------------
def get_on_airship
@vehicle_getting_on = true # Start boarding operation
@vehicle_type = 2 # Set vehicle type
@through = true # Passage ON
@walking_bgm = RPG::BGM::last # Memorize walking BGM
$game_map.airship.get_on # Boarding processing
end
end
Screen: pas d'utilité
Demo: à venir si besoin
Voilà laissez vos coms
Ps: pour tous ceux qui diront que c'est faisable facilement en évent, je m'en fiche j'avais envi.
- Aurel190Membre
- Nombre de messages : 80
Age : 27
Localisation : devans mon pc XD
Distinction : aucune
Date d'inscription : 22/06/2010
Re: Se téléporter à l'interrieur d'un vaisseau
Dim 28 Nov 2010 - 14:18
Moi je l'ai toute en évenement et je peux mettre la démo (dés que tu veux démaré le vaisseau tu es téléporté dans le cockpit et de la tu peux démaré le vaisseau ou le visité !)
- SkilloStaffeux retraité
- Nombre de messages : 526
Age : 35
Localisation : Rennes
Distinction : J'aime ce gars
(by Coco')
Scripteur apprenti, futur Berka !
(par Tretian)
Membre anonyme de la communauté, caché derrière son PC
(???)
super prof de script
[Dudu']
Résident permanent de la Chat Box
[Autoproclamé]
Adepte du XDDD [Yak' ]
Fanatique hystérique de Raymond le français [Un connu]
Date d'inscription : 19/01/2008
Re: Se téléporter à l'interrieur d'un vaisseau
Dim 28 Nov 2010 - 14:43
Tu fais ce que tu veux mais au moins mon script n'as besoin que d'un petit évent commun de 3 lignes pour marcher.
- Aurel190Membre
- Nombre de messages : 80
Age : 27
Localisation : devans mon pc XD
Distinction : aucune
Date d'inscription : 22/06/2010
Re: Se téléporter à l'interrieur d'un vaisseau
Dim 28 Nov 2010 - 14:46
Je vais testé ton script il l'air quand meme chouette !
- InvitéInvité
Re: Se téléporter à l'interrieur d'un vaisseau
Mar 21 Déc 2010 - 0:53
Une démo s'il vous plait ^^
- MaloumeMembre
- Nombre de messages : 623
Age : 30
Localisation : Marseille mon con
Distinction : aucune
Date d'inscription : 28/05/2010
Re: Se téléporter à l'interrieur d'un vaisseau
Mar 21 Déc 2010 - 10:26
C'est vrai qu'une démo serai bien mais le tout a l'air intéressant, mais je comprend pa bien l'utilité. Quelqu'un peut m'expliquer
- [résolu]Activer un event par contact/touche action lors de déplacement en vaisseau et faire se téléporter un vaisseau proche du héro
- [Script][RGSS3]Se téléporter à l'interrieur d'un vaisseau
- Téléporter le héros
- Bataille en vaisseau
- [Résolut]Téléporter personnage qui n'a plus de possibilités de déplacements
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum