Day.png);">
Apprendre


Vous êtes
nouveau sur
Oniromancie?

Visite guidée
du site


Découvrir
RPG Maker


Apprendre
RPG Maker

Tutoriels
Guides
Making-of

Dans le
Forum

Section Entraide

Jeux: Onsen RPG - A Tale of Yu / Jeux: Final Destiny / Jeux: puie z / Jeux: Citymaime - Chapitre 1 / Jeux: Mer, îles et fous / Chat

Bienvenue
visiteur !




publicité RPG Maker!

Statistiques

Liste des
membres


Contact

Mentions légales

344 connectés actuellement

30746596 visiteurs
depuis l'ouverture

2925 visiteurs
aujourd'hui



Barre de séparation

Partenaires

Indiexpo

Akademiya RPG Maker

Blog Alioune Fall

Fairy Tail Constellations

RPG Fusion

Kingdom Ultimate

RPG Maker Détente

ConsoleFun

Tous nos partenaires

Devenir
partenaire



Messages postés par silwold
Nombre de messages référencés sur Oniromancie (non supprimés): 5

Aller à la page: 1

Posté dans Scripts - Light Effects 1.3

Silwold - posté le 12/09/2009 à 17:53:14. (7 messages postés)

Un très bon script, c'est ce qu'on pensait au début...

Le gros problème est qu'une fois que l'on a activé un effet de lumière sur un i nterrupteur, impossible de l'eteindre!

Y a t-il une solution, ou pas?:feu

La vie n'est qu'un passage que tout le monde doit prendre tot ou tard même si la mort ouvre ses portes quand on s'y attend pas...

Posté dans Scripts - 2 Players Engine

silwold - posté le 25/07/2009 à 17:57:10. (7 messages postés)

en faite il faut mettre: (en exemple)

$game_player2 = Game_Player2.new

$game_player2.create(1, 1, 2, false)

au dessus de main mais aussi:


#=========================================

# [VX] 2 Players Engine

#------------------------------------------------

# By Woratana [woratana@hotmail.com]

# Version: 1.0

# Date: 14/03/2008 *HAPPY PIE DAY! lol*

#

# CREDIT: Original XP Version by Hima



=begin



+[FEATURES]+

- Create Player 2 that you can control, interact with other events in map,

as same as Main Player.



- Editable Input Buttons for Player 2



- Player 2 can walk & Run 8 directions



+[HOW TO USE]+

To Create Player 2, use call script:

$game_player2 = Game_Player2.new

$game_player2.create(x, y, actor id, follow?)



x and y = X and Y that you want new player to appear



actor id = Character from ID of Actor that you want to use for new player

(ID from Database)



follow? = true (Screen follow new player), false (not follow new player)

*NOT RECOMMEND TO USE FOLLOW*



To Delete Player 2, use call script:

$game_player2.delete



=end

#==========================================



class Game_Player2 < Game_Character

#--------------------------------------------------------------------------

# START SETUP SCRIPT PART

# * Constants: Commande du 2em joueur

#--------------------------------------------------------------------------

DOWN = Input::Y # S du clavier

LEFT = Input::X # A du clavier

RIGHT = Input::Z # D du clavier

UP = Input::R # W du clavier

ENTER = Input::L # Q du clavier

RUN = Input::A # Shift du clavier

#--------------------------------------------------------------------------

# END SETUP SCRIPT PART

#--------------------------------------------------------------------------



CENTER_X = (544 / 2 - 16) * 8 # Screen center X coordinate * 8

CENTER_Y = (416 / 2 - 16) * 8 # Screen center Y coordinate * 8

#--------------------------------------------------------------------------

# * Public Instance Variables

#--------------------------------------------------------------------------

attr_reader :vehicle_type # type of vehicle currenting being ridden

attr_accessor :character_name

#--------------------------------------------------------------------------

# * Create and Set Player 2 Location

#--------------------------------------------------------------------------

def create(x,y,id,need_center = false)

@actor_id = id

moveto(x,y)

@need_center = need_center

refresh

end

#--------------------------------------------------------------------------

# * Clear Player 2

#--------------------------------------------------------------------------

def delete

@actor_id = nil

refresh

$game_player2 = nil

end

#--------------------------------------------------------------------------

# * Object Initialization

#--------------------------------------------------------------------------

def initialize

super

@vehicle_type = -1

@vehicle_getting_on = false # Boarding vehicle flag

@vehicle_getting_off = false # Getting off vehicle flag

@transferring = false # Player transfer flag

@new_map_id = 0 # Destination map ID

@new_x = 0 # Destination X coordinate

@new_y = 0 # Destination Y coordinate

@new_direction = 0 # Post-movement direction

@walking_bgm = nil # For walking BGM memory

end

#--------------------------------------------------------------------------

# * Determine if Stopping

#--------------------------------------------------------------------------

def stopping?

return false if @vehicle_getting_on

return false if @vehicle_getting_off

return super

end

#--------------------------------------------------------------------------

# * Player Transfer Reservation

# map_id : Map ID

# x : x-coordinate

# y : y coordinate

# direction : post-movement direction

#--------------------------------------------------------------------------

def reserve_transfer(map_id, x, y, direction)

@transferring = true

@new_map_id = map_id

@new_x = x

@new_y = y

@new_direction = direction

end

#--------------------------------------------------------------------------

# * Determine if Player Transfer is Reserved

#--------------------------------------------------------------------------

def transfer?

return @transferring

end

#--------------------------------------------------------------------------

# * Execute Player Transfer

#--------------------------------------------------------------------------

def perform_transfer

return unless @transferring

@transferring = false

set_direction(@new_direction)

if $game_map.map_id != @new_map_id

$game_map.setup(@new_map_id) # Move to other map

end

moveto(@new_x, @new_y)

end

#--------------------------------------------------------------------------

# * Determine if Map is Passable

# x : x-coordinate

# y : y-coordinate

#--------------------------------------------------------------------------

def map_passable?(x, y)

case @vehicle_type

when 0 # Boat

return $game_map.boat_passable?(x, y)

when 1 # Ship

return $game_map.ship_passable?(x, y)

when 2 # Airship

return true

else # Walking

return $game_map.passable?(x, y)

end

end

#--------------------------------------------------------------------------

# * Determine if Walking is Possible

# x : x-coordinate

# y : y-coordinate

#--------------------------------------------------------------------------

def can_walk?(x, y)

last_vehicle_type = @vehicle_type # Remove vehicle type

@vehicle_type = -1 # Temporarily set to walking

result = passable?(x, y) # Determine if passable

@vehicle_type = last_vehicle_type # Restore vehicle type

return result

end

#--------------------------------------------------------------------------

# * Determine if Airship can Land

# x : x-coordinate

# y : y-coordinate

#--------------------------------------------------------------------------

def airship_land_ok?(x, y)

unless $game_map.airship_land_ok?(x, y)

return false # The tile passable attribute is unlandable

end

unless $game_map.events_xy(x, y).empty?

return false # Cannot land where there is an event

end

return true # Can land

end

#--------------------------------------------------------------------------

# * Determine if Riding in Some Kind of Vehicle

#--------------------------------------------------------------------------

def in_vehicle?

return @vehicle_type >= 0

end

#--------------------------------------------------------------------------

# * Determine if Riding in Airship

#--------------------------------------------------------------------------

def in_airship?

return @vehicle_type == 2

end

#--------------------------------------------------------------------------

# * Determine if Dashing

#--------------------------------------------------------------------------

def dash?

return false if @move_route_forcing

return false if $game_map.disable_dash?

return false if in_vehicle?

return Input.press?(RUN)

end

#--------------------------------------------------------------------------

# * Determine if Debug Pass-through State

#--------------------------------------------------------------------------

def debug_through?

return false unless $TEST

return Input.press?(Input::CTRL)

end

#--------------------------------------------------------------------------

# * Set Map Display Position to Center of Screen

# x : x-coordinate

# y : y-coordinate

#--------------------------------------------------------------------------

def center(x, y)

display_x = x * 256 - CENTER_X # Calculate coordinates

unless $game_map.loop_horizontal? # No loop horizontally?

max_x = ($game_map.width - 17) * 256 # Calculate max value

display_x = [0, [display_x, max_x].min].max # Adjust coordinates

end

display_y = y * 256 - CENTER_Y # Calculate coordinates

unless $game_map.loop_vertical? # No loop vertically?

max_y = ($game_map.height - 13) * 256 # Calculate max value

display_y = [0, [display_y, max_y].min].max # Adjust coordinates

end

$game_map.set_display_pos(display_x, display_y) # Change map location

end

#--------------------------------------------------------------------------

# * Move to Designated Position

# x : x-coordinate

# y : y-coordinate

#--------------------------------------------------------------------------

def moveto(x, y)

super

# center(x, y)

make_encounter_count # Initialize encounter

if in_vehicle? # Riding in vehicle

vehicle = $game_map.vehicles[@vehicle_type] # Get vehicle

vehicle.refresh # Refresh

end

end

#--------------------------------------------------------------------------

# * Increase Steps

#--------------------------------------------------------------------------

def increase_steps

super

return if @move_route_forcing

return if in_vehicle?

$game_party.increase_steps

$game_party.on_player_walk

end

#--------------------------------------------------------------------------

# * Get Encounter Count

#--------------------------------------------------------------------------

def encounter_count

return @encounter_count

end

#--------------------------------------------------------------------------

# * Make Encounter Count

#--------------------------------------------------------------------------

def make_encounter_count

if $game_map.map_id != 0

n = $game_map.encounter_step

@encounter_count = rand(n) + rand(n) + 1 # As if rolling 2 dice

end

end

#--------------------------------------------------------------------------

# * Determine if in Area

# area : Area data (RPG::Area)

#--------------------------------------------------------------------------

def in_area?(area)

return false if area == nil

return false if $game_map.map_id != area.map_id

return false if @x < area.rect.x

return false if @y < area.rect.y

return false if @x >= area.rect.x + area.rect.width

return false if @y >= area.rect.y + area.rect.height

return true

end

#--------------------------------------------------------------------------

# * Create Group ID for Troop Encountered

#--------------------------------------------------------------------------

def make_encounter_troop_id

encounter_list = $game_map.encounter_list.clone

for area in $data_areas.values

encounter_list += area.encounter_list if in_area?(area)

end

if encounter_list.empty?

make_encounter_count

return 0

end

return encounter_list[rand(encounter_list.size)]

end

#--------------------------------------------------------------------------

# * Refresh

#--------------------------------------------------------------------------

def refresh

if @actor_id != nil and $game_actors[@actor_id] != nil

actor = $game_actors[@actor_id] # Get front actor

@character_name = actor.character_name

@character_index = actor.character_index

else

@character_name = ""

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, @y)

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, @direction)

front_y = $game_map.y_with_direction(@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

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

#--------------------------------------------------------------------------

# * Determine if Touch Event is Triggered

# x : x-coordinate

# y : y-coordinate

#--------------------------------------------------------------------------

def check_event_trigger_touch(x, y)

return false if $game_map.interpreter.running?

result = false

for event in $game_map.events_xy(x, y)

if [1,2].include?(event.trigger) and event.priority_type == 1

event.start

result = true

end

end

return result

end

#--------------------------------------------------------------------------

# * Processing of Movement via input from the Directional Buttons

#--------------------------------------------------------------------------

def move_by_input

return unless movable?

return if $game_map.interpreter.running?

if Input.press?(DOWN)

move_down

end

if Input.press?(LEFT)

move_left

end

if Input.press?(RIGHT)

move_right

end

if Input.press?(UP)

move_up

end

end

#--------------------------------------------------------------------------

# * Determine if Movement is Possible

#--------------------------------------------------------------------------

def movable?

return false if moving? # Moving

return false if @move_route_forcing # On forced move route

return false if @vehicle_getting_on # Boarding vehicle

return false if @vehicle_getting_off # Getting off vehicle

return false if $game_message.visible # Displaying a message

return false if in_airship? and not $game_map.airship.movable?

return true

end

#--------------------------------------------------------------------------

# * Frame Update

#--------------------------------------------------------------------------

def update

last_real_x = @real_x

last_real_y = @real_y

last_moving = moving?

move_by_input

super

update_scroll(last_real_x, last_real_y) if @need_center

update_vehicle

update_nonmoving(last_moving)

end

#--------------------------------------------------------------------------

# * Update Scroll

#--------------------------------------------------------------------------

def update_scroll(last_real_x, last_real_y)

ax1 = $game_map.adjust_x(last_real_x)

ay1 = $game_map.adjust_y(last_real_y)

ax2 = $game_map.adjust_x(@real_x)

ay2 = $game_map.adjust_y(@real_y)

if ay2 > ay1 and ay2 > CENTER_Y

$game_map.scroll_down(ay2 - ay1)

end

if ax2 < ax1 and ax2 < CENTER_X

$game_map.scroll_left(ax1 - ax2)

end

if ax2 > ax1 and ax2 > CENTER_X

$game_map.scroll_right(ax2 - ax1)

end

if ay2 < ay1 and ay2 < CENTER_Y

$game_map.scroll_up(ay1 - ay2)

end

end

#--------------------------------------------------------------------------

# * Update Vehicle

#--------------------------------------------------------------------------

def update_vehicle

return unless in_vehicle?

vehicle = $game_map.vehicles[@vehicle_type]

if @vehicle_getting_on # Boarding?

if not moving?

@direction = vehicle.direction # Change direction

@move_speed = vehicle.speed # Change movement speed

@vehicle_getting_on = false # Finish boarding operation

@transparent = true # Transparency

end

elsif @vehicle_getting_off # Getting off?

if not moving? and vehicle.altitude == 0

@vehicle_getting_off = false # Finish getting off operation

@vehicle_type = -1 # Erase vehicle type

@transparent = false # Remove transparency

end

else # Riding in vehicle

vehicle.sync_with_player # Move at the same time as player

end

end

#--------------------------------------------------------------------------

# * Processing when not moving

# last_moving : Was it moving previously?

#--------------------------------------------------------------------------

def update_nonmoving(last_moving)

return if $game_map.interpreter.running?

return if moving?

return if check_touch_event if last_moving

if not $game_message.visible and Input.trigger?(ENTER)

return if get_on_off_vehicle

return if check_action_event

end

update_encounter if last_moving

end

#--------------------------------------------------------------------------

# * Update Encounter

#--------------------------------------------------------------------------

def update_encounter

return if $TEST and Input.press?(Input::CTRL) # During test play?

return if in_vehicle? # Riding in vehicle?

if $game_map.bush?(@x, @y) # If in bush

@encounter_count -= 2 # Reduce encounters by 2

else # If not in bush

@encounter_count -= 1 # Reduce encounters by 1

end

end

#--------------------------------------------------------------------------

# * Determine Event Start Caused by Touch (overlap)

#--------------------------------------------------------------------------

def check_touch_event

return false if in_airship?

return check_event_trigger_here([1,2])

end

#--------------------------------------------------------------------------

# * Determine Event Start Caused by [OK] Button

#--------------------------------------------------------------------------

def check_action_event

return false if in_airship?

return true if check_event_trigger_here([0])

return check_event_trigger_there([0,1,2])

end

#--------------------------------------------------------------------------

# * Getting On and Off Vehicles

#--------------------------------------------------------------------------

def get_on_off_vehicle

return false unless movable?

if in_vehicle?

return get_off_vehicle

else

return get_on_vehicle

end

end

#--------------------------------------------------------------------------

# * Board Vehicle

# Assumes that the player is not currently in a vehicle.

#--------------------------------------------------------------------------

def get_on_vehicle

front_x = $game_map.x_with_direction(@x, @direction)

front_y = $game_map.y_with_direction(@y, @direction)

if $game_map.airship.pos?(@x, @y) # Is it overlapping with airship?

get_on_airship

return true

elsif $game_map.ship.pos?(front_x, front_y) # Is there a ship in front?

get_on_ship

return true

elsif $game_map.boat.pos?(front_x, front_y) # Is there a boat in front?

get_on_boat

return true

end

return false

end

#--------------------------------------------------------------------------

# * Board Boat

#--------------------------------------------------------------------------

def get_on_boat

@vehicle_getting_on = true # Boarding flag

@vehicle_type = 0 # Set vehicle type

force_move_forward # Move one step forward

@walking_bgm = RPG::BGM::last # Memorize walking BGM

$game_map.boat.get_on # Boarding processing

end

#--------------------------------------------------------------------------

# * Board Ship

#--------------------------------------------------------------------------

def get_on_ship

@vehicle_getting_on = true # Board

@vehicle_type = 1 # Set vehicle type

force_move_forward # Move one step forward

@walking_bgm = RPG::BGM::last # Memorize walking BGM

$game_map.ship.get_on # Boarding processing

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

#--------------------------------------------------------------------------

# * Get Off Vehicle

# Assumes that the player is currently riding in a vehicle.

#--------------------------------------------------------------------------

def get_off_vehicle

if in_airship? # Airship

return unless airship_land_ok?(@x, @y) # Can't land?

else # Boat/ship

front_x = $game_map.x_with_direction(@x, @direction)

front_y = $game_map.y_with_direction(@y, @direction)

return unless can_walk?(front_x, front_y) # Can't touch land?

end

$game_map.vehicles[@vehicle_type].get_off # Get off processing

if in_airship? # Airship

@direction = 2 # Face down

else # Boat/ship

force_move_forward # Move one step forward

@transparent = false # Remove transparency

end

@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

#--------------------------------------------------------------------------

# * Force One Step Forward

#--------------------------------------------------------------------------

def force_move_forward

@through = true # Passage ON

move_forward # Move one step forward

@through = false # Passage OFF

end

end



class Scene_Title < Scene_Base

alias wor_twopla_scetit_cregam create_game_objects

def create_game_objects

wor_twopla_scetit_cregam

$game_player2 = nil

end

end



class Scene_Map < Scene_Base

alias wor_twopla_scemap_upd update

def update

wor_twopla_scemap_upd

$game_player2.update if $game_player2 != nil

end

end



class Spriteset_Map

alias wor_twopla_sprmap_crecha create_characters

alias wor_twopla_sprmap_updcha update_characters

def create_characters

wor_twopla_sprmap_crecha

@character_sprites.push(Sprite_Character.new(@viewport1, $game_player))

@chara_two_pushed = false

end



def update_characters

if !(@chara_two_pushed) and $game_player2 != nil

@character_sprites.push(Sprite_Character.new(@viewport1, $game_player2))

@chara_two_pushed = true

elsif @chara_two_pushed and $game_player2 == nil

for i in 0..@character_sprites.size

if @character_sprites.character.is_a?(Game_Player2)

@character_sprites.character.character_name = ""

@character_sprites.update

@character_sprites.delete_at(i)

break

end

end

@chara_two_pushed = false

end

wor_twopla_sprmap_updcha

end

end



class Game_Map

alias wor_twopla_gammap_passable passable?

def passable?(x, y, flag = 0x01)

if $game_player2 != nil and flag

return false if $game_player2.x == x and $game_player2.y == y

end

wor_twopla_gammap_passable(x, y, flag)

end

end



Du moins il me semble que c'est comme ça que j'ai fait.
Mais pour le moment personnellement je dirait qu'il y a encore du travaille a faire sur ce scripte.
J'encourage tout de même son créateur, car je suppose que ça ne doit pas être facile. bonne continuation.

La vie n'est qu'un passage que tout le monde doit prendre tot ou tard même si la mort ouvre ses portes quand on s'y attend pas...

Posté dans Jeux - Article supprimé

silwold - posté le 23/05/2009 à 10:14:44. (7 messages postés)

Et bien il n'y a pas que des samurai simples, certain sont des samurai élémentaires, il existe donc 9 élémentaires (le feu, eau, lumière, ombre, terre, lune, forêt, éther, et vent)

ces élémentaires ont chacun leur but, il y en a qu'il veulent contrôler le monde d'autre qui sont pourchasser par des soldats de l'ordre.
Bien que ces élémentaires n'ont pas les mêmes objectifs, un jour ils se rencontrent, mais comment?
Cela je ne le révélerait pas, ni pourquoi ils ce rencontrent.

Style de combat: pour la démo c'est les combats officiels de vx, mais je vais les changer pour que l'on voix chacun des perso donner un coup d'épée, cela donnera une instance plus en temps réel.

Sinon bon jeu!!!

édit:
la deuxième version est quasi prête elle va bientôt arriver.

La vie n'est qu'un passage que tout le monde doit prendre tot ou tard même si la mort ouvre ses portes quand on s'y attend pas...

Posté dans Scripts - 2 Players Engine

silwold - posté le 16/04/2009 à 11:11:14. (7 messages postés)

autre bug, le deusième joueur ne peut pas passer les portes il n'avance pas quand elle s'ouvre.

La vie n'est qu'un passage que tout le monde doit prendre tot ou tard même si la mort ouvre ses portes quand on s'y attend pas...

Posté dans Scripts - 2 Players Engine

silwold - posté le 13/02/2009 à 10:30:30. (7 messages postés)

C'est pourtant facil à le mettre, par contre il faut mettre la première partie du code, mais aussi le scripte pour changer le mouvement du deusième joueur, sinon ca ne marche pas!!!
par contre domage que le deusième joueur quand il se fait téléporter par le premier il reste là ou il était, enfin, si le j 1 se téléporte pour changer de crte le j2 est aussi téléporté mais il reste là ou il se trouvait, ca peut généré des bug, il faut y remédier,
sinon c'est du bon boulot, bonne continuation.

La vie n'est qu'un passage que tout le monde doit prendre tot ou tard même si la mort ouvre ses portes quand on s'y attend pas...

Aller à la page: 1

Haut de page

Merci de ne pas reproduire le contenu de ce site sans autorisation.
Contacter l'équipe - Mentions légales

Plan du site

Communauté: Accueil | Forum | Chat | Commentaires | News | Flash-news | Screen de la semaine | Sorties | Tests | Gaming-Live | Interviews | Galerie | OST | Blogs | Recherche
Apprendre: Visite guidée | RPG Maker 95 | RPG Maker 2003 | RPG Maker XP | RPG Maker VX | RPG Maker MV | Tutoriels | Guides | Making-of
Télécharger: Programmes | Scripts/Plugins | Ressources graphiques / sonores | Packs de ressources | Midis | Eléments séparés | Sprites
Jeux: Au hasard | Notre sélection | Sélection des membres | Tous les jeux | Jeux complets | Le cimetière | RPG Maker 95 | RPG Maker 2000 | RPG Maker 2003 | RPG Maker XP | RPG Maker VX | RPG Maker VX Ace | RPG Maker MV | Autres | Proposer
Ressources RPG Maker 2000/2003: Chipsets | Charsets | Panoramas | Backdrops | Facesets | Battle anims | Battle charsets | Monstres | Systems | Templates
Ressources RPG Maker XP: Tilesets | Autotiles | Characters | Battlers | Window skins | Icônes | Transitions | Fogs | Templates
Ressources RPG Maker VX: Tilesets | Charsets | Facesets | Systèmes
Ressources RPG Maker MV: Tilesets | Characters | Faces | Systèmes | Title | Battlebacks | Animations | SV/Ennemis
Archives: Palmarès | L'Annuaire | Livre d'or | Le Wiki | Divers