Kable - Nie 31 Sty, 2010 13:56 Temat postu: WejścieWitam Mam Pytanie Czy istnieje Skrypt w którym np. Po podejściu do drzwi np. Dom i wiem że możliwością jest aby podejść i samemu prze teleportuje Cie do ustawionej lokacji albo za pomocą klawisza, co wie każdy, i mam pytanie czy jest skrypt który mógłby zrobić tak by Pokazywało się np. w Lewym górnym oknie możliwość wejścia do tej lokacji? np. W górnym prawym rogu w okienku pokazuje się nazwa lokacji? bez zbędnego wyświetlania się czy chcesz wejść tak lub nie. Jeżeli nie rozumiecie to postaram się zrobić jakiś screen z tuningiem abyście zrozumieli chociaż myślę że powinniście zrozumieć moje Bogotanie ( choć nie wiem co te słowo znaczy ^ ^ ) :D
Ps. Proszę o przeniesienie tego tematu do innego działu ponieważ pomyliły mi się działy przez moją nie uwage ^^bionicl - Nie 31 Sty, 2010 14:10 Wg mnie, można zrobić zwykłe pytanie na górze z przezroczystym tłem:
czy chcesz wejść (np.) do domu Stasiów?
Tak
Nie
Już poco się męczyć z tymi skryptami... :)
PS. Ja jeszcze bym radził zrobić że przedtem jest czarno białe tło...Kable - Nie 31 Sty, 2010 14:25 bionicl, o to chodzi właśnie, że tego nie chcę :P ponieważ jest to moim zdaniem irytujące ciągłe te klikanie tak lub nie ;d moim zdaniem to zniechęca Dlatego Chciałbym tak jak wymieniłem powyżej ^^bionicl - Nie 31 Sty, 2010 14:36 Ojjj... Przepraszam, źle się do czytałem...
Nie wiem, jak ci pomóc, ale... Możesz robić tak że ogrom obrazków z napisami tych miejscowości i jakoś wykombinować, że gdy jesteś nie daleko drzwi, to pojawiają się ta nazwy...
Możesz zrobić też tak, ale to nie tak jak chciałeś, że nas drzwiami zrobić ten napis nad charakterami (http://www.ultimateam.pl/viewtopic.php?t=2250) innych pomysłów to ja nie mam...Kable - Nie 31 Sty, 2010 14:38 bionicl, Propozycje tego linku rozważałem i to nie raz ;) ale przy zwykłych schodach czy drzwiach wyglądało by tragicznie sam przyznaj ;) dlatego jedyne rozwiązanie jakie bym chciał to okienko np. w Prawym górnym rogu ;]Ayene - Nie 31 Sty, 2010 14:45 Czyli miałaby się pojawiać na chwilę nazwa lokacji w górnym rogu, w chwili gdy podejdzie się do drzwi. A dopiero wciskając enter drużyna przez nie by przeszła? Dobrze rozumiem?Kable - Nie 31 Sty, 2010 14:48 Tak rozumiesz doskonale :) Tak jak mówisz podczas podejścia np. do Drzwi w prawym górnym rogu pojawia się napis nazwy lokacji po czym w każdej chwili wciskam Enter by wejść ;]Cyklop - Nie 31 Sty, 2010 19:43 Ale też juz wydziwiacie. Tak jakby nie można było tego zrobić za pomocą zwykłych obrazków, które pojawiałyby się przy dotknięciu i znikały po 4 sek.... po co tobie skrypt?Kable - Pon 01 Lut, 2010 04:52 Cyklop, Skrypt nie skrypt nie jestem jakimś super RPG makerowcem nie znam się na tym tak jak inni... i czemu wydziwiam? Chce stworzyć grę i jak chce by była dobra to potrzebuje skryptów to logiczne O.o
Zresztą taki obrazek by się przecież chyba pojawiał albo po naciśnięciu klawisza czyli od razu wejde i pojawia się obrazek albo przy wchodzeniu... tak mi się wydajeAyene - Wto 02 Mar, 2010 07:44 Chciałam zapytać, czy nadal potrzebny jest taki skrypty, czy może problem został rozwiązany?Kable - Wto 02 Mar, 2010 12:43 Skrypt nadal potrzebuje :P Szukałem ciągle i nie znalazłem... co ja mówię dalej szukam ;p ale nic nie znajduje... pewnie dlatego, że problem z angielskim bo są skrypty bez Screenów i nie wiem co jest co ;)Ayene - Pią 23 Kwi, 2010 09:43 Najprawdopodobniej po prostu taki skrypt nie powstał
Trochę się namęczyłam, ale mam nadzieję, że efekt jest zadowalający... (o ile nadal interesujesz się i tworzysz w RM):
Spoiler:
Kod:
# ------------------------------------------------------------
# Nazwa Teleportu
# by Ayene
# Skrypt na zamówienie Kable
# 23.04.2010
# 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
def terminate
ayene_scmap_terminate
@teleport_window.dispose
end
def update_basic
ayene_scmap_update_basic
@teleport_window.visible = false
end
def update
ayene_scmap_update
@teleport_window.update
if $teleport_refresh == true
@time += 1
@teleport_window.refresh
@teleport_window.visible = true
end
if @time > 200
@teleport_window.visible = false
$teleport_refresh = false
@time = 0
end
end
end
class Window_Teleport < Window_Base
def initialize
super(284, 0, 260, WLH + 32)
self.opacity = Ayene::PRZEZROCZYSTOŚĆ_OKNA
refresh
end
def refresh
self.contents.clear
self.contents.font.shadow = true
text = Ayene::TEKST_PRZED_NAZWĄ + $game_temp.teleport_name.to_s
if Ayene::PRZEZROCZYSTOŚĆ_OKNA == 0
self.contents.draw_text(4, 0, self.width - 40, WLH, text, 2)
else
self.contents.draw_text(4, 0, self.width - 40, WLH, text, 0)
end
end
end
class Game_Temp
attr_accessor :teleport_name
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
$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
Wystarczy, że postawisz na mapie teleport, a w jego nazwie umieścisz [TEL].
Pozdrawiam.ziomalek - Pią 23 Kwi, 2010 18:28 Dzięki ayne niezłe!Kable - Sro 28 Kwi, 2010 04:56 Powiem tak Ayene... Mistrzowska robota :P musiałem zmienić kilka cyferek bo nie podobało mi się ,że napis pokazywał się jeszcze przed teleportem i zbyt długo był :> no i nie ma okienka tylko sam napis ;D ale nie ma co narzekać wykonane zostało świetnie :D dziękować ^ ^
[ Dodano: Sro 28 Kwi, 2010 05:01 ]
Dobra po Edytowałem i okienko już jest :D szkoda tylko, że po czasie znika ale jak dla mnie jest rewelacja :DAyene - Sro 28 Kwi, 2010 07:24
Cytat:
pokazywał się jeszcze przed teleportem
Z tego co zrozumiałam wcześniej to właśnie o to Tobie chodziło - aby wyświetlało nazwę teleportu jeszcze zanim się teleportujesz (by wyświetlało miejsce, do którego się przeniesiesz, jeśli z niego skorzystasz).
Cytat:
Dobra po Edytowałem i okienko już jest :D szkoda tylko, że po czasie znika ale jak dla mnie jest rewelacja :D
Chcesz, aby to okienko było cały czas na mapie? To przecież można zmienić...Kable - Sro 28 Kwi, 2010 19:25 Ayene,
Cytat:
Z tego co zrozumiałam wcześniej to właśnie o to Tobie chodziło - aby wyświetlało nazwę teleportu jeszcze zanim się teleportujesz (by wyświetlało miejsce, do którego się przeniesiesz, jeśli z niego skorzystasz).
Nie nie :P Chciałem aby po wejściu w teleport pisała nazwa :P nie krok przed nim :) ale to już nie istotne
Cytat:
Chcesz, aby to okienko było cały czas na mapie? To przecież można zmienić...
Nie nie :P też nie chce by było ciągle na mapie ale tylko wtedy kiedy jestem na polu z teleportem... no ale jak to ma Ci przysporzyć sporych zmian w skrypcie i czasu to daj se spokój ;D to mi w zupełności wystarcza :DAyene - Sob 01 Maj, 2010 12:32 To sprawdź to
Spoiler:
Kod:
# ------------------------------------------------------------
# Nazwa Teleportu
# by Ayene
# Skrypt na zamówienie Kable
# 23.04.2010
# 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
def terminate
ayene_scmap_terminate
@teleport_window.dispose
end
def update_basic
ayene_scmap_update_basic
@teleport_window.visible = false
end
def update
ayene_scmap_update
@teleport_window.update
if $teleport_refresh == true
@teleport_window.refresh
@teleport_window.visible = true
else
@teleport_window.visible = false
end
end
end
class Window_Teleport < Window_Base
def initialize
super(284, 0, 260, WLH + 32)
self.opacity = Ayene::PRZEZROCZYSTOŚĆ_OKNA
refresh
end
def refresh
self.contents.clear
self.contents.font.shadow = true
text = $game_temp.teleport_name.to_s
if Ayene::PRZEZROCZYSTOŚĆ_OKNA == 0
self.contents.draw_text(4, 0, self.width - 40, WLH, text, 2)
else
self.contents.draw_text(4, 0, self.width - 40, WLH, text, 0)
end
end
end
class Game_Temp
attr_accessor :teleport_name
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 = Ayene::TEKST_PRZED_NAZWĄ + map_name[teleport_name].name
$teleport_refresh = true
result = true
end
end
end
return result
end
def check_teleport_out(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 = ''
$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)
check_teleport_out(@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, @y)
check_teleport_out(@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, @y)
check_teleport_out(@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)
check_teleport_out(@x, @y+1)
end
end
SaE - Czw 13 Maj, 2010 14:31 Lepiej jak widać okienko, ale jak kto tam woli ^^ Dla mnie fajny pomysł, na razie nie robię gry, ale jak coś to też użyję u siebie. Można też dodać jakiś obrazek, tak jak z nazwą lokacji.Ayene - Czw 13 Maj, 2010 14:37 Tak, rozwiązań może być kilka.
Skoro Kable nie zgłasza zastrzeżeń do ostatecznej wersji to temat zamykam