Pomogła: 232 razy Dołączyła: 18 Wrz 2007 Posty: 2424
Wysłany: Pon 31 Sty, 2011 11:23
Nazwa teleportu
~ Nazwa teleportu [VX] ~
Krótki opis
Skrypt powstały niegdyś na zamówienie jednego z użytkowników forum. Wyświetla nazwę mapy, na którą prowadzi teleport w zdarzeniu. Innymi słowy, gdy w zdarzeniu umieścimy komendę 'Transfer Player', pojawi się okienko z informacją, gdzie prowadzi dany teleport. Techniczne skrypt pobiera po prostu nazwę docelowej mapy.
Może się komuś przyda
Uwaga!
Zalecane dokładne testy. By nazwa teleportu się wyświetliła w nazwie zdarzenia należy umieścić tag '[TEL]'
Autor skryptu
Ayene [yurika@o2.pl]
Kompatybilność
Tylko VX
Skrypt
Spoiler:
Kod:
# ------------------------------------------------------------
# Nazwa Teleportu
# by Ayene
# 23.04.2010 ver. 1.1
# www.ultimateam.pl
# ------------------------------------------------------------
# Skrypt wyświetla nazwę mapy, na którą prowadzi teleport w zdarzeniu.
# ------------------------------------------------------------
# Instalacja: Umieść skrypt nad Main.
# ------------------------------------------------------------
module Ayene
# Umieść tag w nazwie zdarzenia, by wyświetlić nazwę mapy, na którą
# prowadzi teleport.
TAG_TELEPORTU = '[TEL]'
# Tekst wyświetlany przed nazwą lokacji
TEKST_PRZED_NAZWĄ = 'Cel: '
end
class Scene_Map < Scene_Base
alias ayene_scmap_start start
alias ayene_scmap_terminate terminate
alias ayene_scmap_update update
alias ayene_scmap_update_basic update_basic
alias ayene_telname_scmap_updtranplayer update_transfer_player
class Game_Temp
attr_accessor :teleport_name
attr_accessor :teleport_refresh
alias ayene_gatemp_ini initialize
def initialize
ayene_gatemp_ini
@teleport_name = nil
@teleport_refresh = false
end
end
class Game_Player < Game_Character
def check_teleport_touch(x, y)
return false if $game_map.interpreter.running?
result = false
for event in $game_map.events_xy(x, y)
for i in 0...event.list.size
if event.event.name.include?(Ayene::TAG_TELEPORTU) and event.list[i].code == 201
teleport_name = event.list[i].parameters[1]
map_name = load_data("Data/MapInfos.rvdata")
$game_temp.teleport_name = map_name[teleport_name].name
$game_temp.teleport_refresh = true
result = true
end
end
end
return result
end
end
class Game_Event < Game_Character
attr_reader :event
end
class Game_Character
alias ayene_gachar_move_down move_down
def move_down(turn_ok = true)
ayene_gachar_move_down(turn_ok)
check_teleport_touch(@x, @y+1)
end
alias ayene_gachar_move_left move_left
def move_left(turn_ok = true)
ayene_gachar_move_left(turn_ok)
check_teleport_touch(@x-1, @y)
end
alias ayene_gachar_move_right move_right
def move_right(turn_ok = true)
ayene_gachar_move_right(turn_ok)
check_teleport_touch(@x+1, @y)
end
alias ayene_gachar_move_up move_up
def move_up(turn_ok = true)
ayene_gachar_move_up
check_teleport_touch(@x, @y-1)
end
end
Demo
niepotrzebne
Screenshot
Spoiler:
Instrukcja
1. Wklej skrypt nad "Main" w Edytorze Skryptu.
2. Reszta instrukcji znajduje się w treści skryptu.
Pomogła: 232 razy Dołączyła: 18 Wrz 2007 Posty: 2424
Wysłany: Wto 01 Lut, 2011 14:33
Po dotknięciu zdarzenia z teleportem wyświetla się okienko. Tak żeby gracz wiedział, gdzie prowadzą drzwi, przejście itp. Dopiero po wciśnięciu enter (dlatego zalecane Trigger - Action Button) odegra się to, co jest w zdarzeniu...
Nie możesz pisać nowych tematów Nie możesz odpowiadać w tematach Nie możesz zmieniać swoich postów Nie możesz usuwać swoich postów Nie możesz głosować w ankietach Nie możesz załączać plików na tym forum Możesz ściągać załączniki na tym forum