Zénith RPG version 1.1

Soaglor, terre de conflits
miniature
de harusame17.

SPZelda: Déclarations
miniature
de Dark8744.

SPZelda: Déclarations
miniature
de Dark8744.

Tutoriaux événements

"Champ de vision"


  • Script de Inconnu.
  • Aucune démo n'est disponible pour ce script.

Ce script peut servir pour un mini-jeu d'infiltration, les événements "repèrent" le joueur s'il passe dans leur champ de vision.

Après avoir collé le script au-dessus de main, dans les événement concernés intégrez ce code :
check = View_Range.new(event_num,veiw_range,"els")
check.enemies_view

Et remplacez :
event_num par le n° d'ID de l'evenement qui peut repérer le héros.
veiw_range par le nombre de cases à laquelle on peut etre repérer
"els" par la lettre de l'interrupteur local à activer ("A", "B", etc)

#==============================================================================
# View Range Script
#------------------------------------------------------------------------------
#
#
#==============================================================================

class View_Range
#--------------------------------------------------------------------------
# ? Range system works by sereching the area of a circle for the Player's xy
# The Veiw is set in each event and is the radius of the circle
# The Eaquation used is (Px-EX)^2 + (Py-Ey)^2 = radius^2
# If the Radius is less than or equal to the View the Player is inside the circle
#--------------------------------------------------------------------------
attr_accessor :event_num
attr_accessor :view_range
#--------------------------------------------------------------------------
# ? Initialization
#--------------------------------------------------------------------------
def initialize(event_num,veiw_range,els)
@event_num = event_num
@event_locial_switch = els
@view_range = veiw_range
@playerx = $game_player.x
@playery = $game_player.y
@eventx = $game_map.events[@event_num].x
@eventy = $game_map.events[@event_num].y
@event_direction = $game_map.events[@event_num].direction
end
#--------------------------------------------------------------------------
# ? Event Veiw
#--------------------------------------------------------------------------
def event_view
@playerx-=@eventx
@playerx*=@playerx
@playery-=@eventy
@playery*=@playery
@playerx+=@playery
@view_range*=@view_range
if @playerx <= @view_range
$game_self_switches = {[$game_map.map_id, @event_num, @event_locial_switch] => true}
$game_map.need_refresh = true
end
end
#--------------------------------------------------------------------------
# ? Enemies veiw
#--------------------------------------------------------------------------
def enemies_view
if @event_direction == 2
if @playery >= @eventy
@playerx-=@eventx
@playerx*=@playerx
@playery-=@eventy
@playery*=@playery
@playerx+=@playery
@view_range*=@view_range
if @playerx <= @view_range
$game_self_switches = {[$game_map.map_id, @event_num, @event_locial_switch] => true}
$game_system.timer = 420
$game_system.timer_working = false
$game_map.need_refresh = true
end
end
end
if @event_direction == 4
if @playerx <= @eventx
@playerx-=@eventx
@playerx*=@playerx
@playery-=@eventy
@playery*=@playery
@playerx+=@playery
@view_range*=@view_range
if @playerx <= @view_range
$game_self_switches = {[$game_map.map_id, @event_num, @event_locial_switch] => true}
$game_system.timer = 420
$game_system.timer_working = false
$game_map.need_refresh = true
end
end
end
if @event_direction == 6
if @playerx >= @eventx
@playerx-=@eventx
@playerx*=@playerx
@playery-=@eventy
@playery*=@playery
@playerx+=@playery
@view_range*=@view_range
if @playerx <= @view_range
$game_self_switches = {[$game_map.map_id, @event_num, @event_locial_switch] => true}
$game_system.timer = 420
$game_system.timer_working = false
$game_map.need_refresh = true
end
end
end
if @event_direction == 8
if @playery <= @eventy
@playerx-=@eventx
@playerx*=@playerx
@playery-=@eventy
@playery*=@playery
@playerx+=@playery
@view_range*=@view_range
if @playerx <= @view_range
$game_self_switches = {[$game_map.map_id, @event_num, @event_locial_switch] => true}
$game_system.timer = 420
$game_system.timer_working = false
$game_map.need_refresh = true
end
end
end
end
#--------------------------------------------------------------------------
# ? check = View_Range.new(EventID, Veiw Range, Local Switch)
# check.enemies_straight_view
#--------------------------------------------------------------------------
def enemies_straight_view
# checks the x direction
if @playerx == @eventx
$game_self_switches = {[$game_map.map_id, @event_num, @event_locial_switch] => true}
$game_map.need_refresh = true
end
# checks the y direction
if @playery == @eventy
$game_self_switches = {[$game_map.map_id, @event_num, @event_locial_switch] => true}
$game_map.need_refresh = true
end
end
end

Concours d'ambiance

Début du concours :
20 Septembre 2007
Fin du concours :
N/A

BattleZone Games Creations
Final Destiny
Island Maker
Légende
Manga Power
Oniromancie
Relite
RPG Making
RPG Sky
RPGMaker FR
RPGSky
RTP Power
Saleth Empire
Terra RPGXP
Terre RPG
World of DBZ