Long = 2 # OdlegĹoĹÄ skoku (liczba - jedna kratka w tilsecie)
UseVariable = false # OdlegĹoĹÄ skoku jest wyznaczana przez zmiennÄ
VariableID = 1 # ID powyĹźszej zmiennej
Cooldown = 30 # OdstÄp miÄdzy skokami, czyli po jakim czasie moĹźna ponownie
# skoczyÄ (w klatkach animacji)
end
class Game_Player
alias ojsinitialize initialize
attr_accessor :jump_cooldown
def initialize
ojsinitialize
@jump_cooldown = OJS::Cooldown
end
def jump_direction
direcao = []
if OJS::UseVariable
long = $game_variables[OJS::VariableID]
else
long = OJS::Long
end
case @direction
when 2 # Para TrĂĄs / Back
direcao[0] = 0; direcao[1] = 1
when 4 # Esquerda / Left
direcao[0] = -1; direcao[1] = 0
when 6 # Direita / Rigth
direcao[0] = 1; direcao[1] = 0
when 8 # Frente / Up
direcao[0] = 0; direcao[1] = -1
end
direcao[0] = direcao[0] * long; direcao[1] = direcao[1] * long
return direcao
end
def jump_higth_pass?
dire = jump_direction
to_verify = []
case @direction
when 2
to_verify = [@x, @y]
when 4
to_verify = [@x - 1, @y - 1]
when 6
to_verify = [@x + 1, @y - 1]
when 8
to_verify = [@x, @y - 2]
end
id = $game_map.data[to_verify[0], to_verify[1], 2]
return false if id == nil
pass = $game_map.passages[id]
if pass == 22
return false
end
return true
end
def event_passable?(x, y)
for event in $game_map.events_xy(x, y)
return false if event == nil
pass = event.page.priority_type
return false if pass == 1
end
return true
end
def jump_foward
if @jump_cooldown == 30
@jump_cooldown = 0
direcao = jump_direction
jump(direcao[0], direcao[1])
end
end
end
class Scene_Map
alias ojsupdate update
def update
ojsupdate
unless $game_message.visible
update_jump_player
end
unless $game_player.jump_cooldown == 30
$game_player.jump_cooldown += 1
end
end
def update_jump_player
player = $game_player
direct = player.jump_direction
x = player.x + direct[0]
y = player.y + direct[1]
if $game_switches[OJS::OnOffSwitch] == true
if player.map_passable?(x, y) && player.jump_higth_pass? && player.event_passable?(x, y)
if Input.trigger?(OJS::Input)
$game_player.jump_foward
$game_party.steps += OJS::Long
end
elsif Input.trigger?(OJS::Input)
if OJS::Sound == true
Sound.play_buzzer
end
end
end
end
end
class Game_Party
attr_accessor :steps
end
class Game_Map
attr_reader :map
end
class Game_Event < Game_Character
attr_reader :event
attr_reader :page
end
Demo
Screenshot
niepotrzebne
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: Sro 11 Lis, 2009 12:24
SprawdĹş, jakÄ masz wersjÄ programu... otwĂłrz plik Game.rvproj w folderze z grÄ za pomocÄ notatnika. BÄdzie tam wyĹwietlone RPGVX 1.xx. Jakie masz xx?
Pomogła: 232 razy Dołączyła: 18 Wrz 2007 Posty: 2424
Wysłany: Czw 12 Lis, 2009 00:57
W takim razie w demie otwĂłrz plik Game.rvproj za pomocÄ notatnika i zmieĹ wersjÄ z 1.02 na 1.00 (chyba Ĺźe to juĹź problem polskiej wersji - po prostu dopasuj wersjÄ dema do swojego mejkera) Powinno wtedy Tobie demo odpaliÄ, bez problemu bÄdziesz mĂłgĹ podejrzeÄ projekt
PS A co do CTRL - wspomnianÄ przez Ciebie funkcjÄ ma tylko w teĹcie gry. Normalnie w grze przez Ĺciany przechodziÄ nie moĹźna.
nie zaraz zobacze a moze byc ten blad przez to ze mam skrypt walka w czasie rzeczywistym ??
[ Dodano: Pon 15 Lut, 2010 15:12 ]
tam nie moge tego zobaczyc bo tam nie ma skryptu z walka w czasie rzeczywistym ;/
[ Dodano: Pon 15 Lut, 2010 15:23 ]
to co poradzisz Sobie z tym ??
[ Dodano: Pon 15 Lut, 2010 15:50 ]
ayena i jeszcze chcialbym dodac ze on sie tylko nieraz wyswietla nie zawsze ale najczesciej po zabiciu kolesi z charatkters o nazwie Evil ;/
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