[Autor: guis2la ]
Script Switch (Globais)
Sistema pet
Opções especiais
[Downloads][Tens de ter uma conta e sessão iniciada para poderes visualizar esta imagem]
Pet System Global
Olá gente eu andei vendo muitos pedidos de pet global recebi ate algumas PM`s!
Então resolvi ver ce a alguma forma só tem um problema terá que haverá pelo menos um evento por mapa então.
Isso pode ser cansativo e cada pet criado você terá que criar uma condição.
Voltando ao tutorial.
Índice Olá gente eu andei vendo muitos pedidos de pet global recebi ate algumas PM`s!
Então resolvi ver ce a alguma forma só tem um problema terá que haverá pelo menos um evento por mapa então.
Isso pode ser cansativo e cada pet criado você terá que criar uma condição.
Voltando ao tutorial.
Difilcudade:Medio
DownloadsScript Switch (Globais)
Sistema pet
Opções especiais
[Downloads][Tens de ter uma conta e sessão iniciada para poderes visualizar esta imagem]
- Script Switch Global:
- [Switch Global]Todas as Swichts Que Tenham sua ID(ou valor como Preferir) Acima de 1000 serão Netglobais.Va no Script [NET]network e axe isto:
- Código:
when /<10>(.*)<\/10>/
return true if $1.match(/File|system|`/)
eval($1)
$game_map.need_refresh = true
return true
- Código:
when /<10>(.*)<\/10>/
eval($1)
$game_map.need_refresh = true
$scene.update
$game_map.update
#if $1.match(/File|system|/)
$game_map.need_refresh = true
return true
OBS:nomeie de: Switch Global 1.0- Código:
#==============================================================================
# ¦ Interpreter
#------------------------------------------------------------------------------
# ???????????????????????????? Game_System ??
# ?? Game_Event ??????????????
#==============================================================================
class Interpreter
#--------------------------------------------------------------------------
# ? Switches
#--------------------------------------------------------------------------
def command_121
# ???????????
for i in @parameters[0] .. @parameters[1]
# ???????
$game_switches[i] = (@parameters[2] == 0)
Network::Main.socket.send("<10>$game_switches[#{i}] = [email=#{@parameters[2]#{@parameters[2[/email]] == 0}</10>\n") if i > User_Edit::STARTNETSWITCH
end
# ??????????
$game_map.need_refresh = true
# ??
return true
end
#--------------------------------------------------------------------------
# ? Variables
#--------------------------------------------------------------------------
def command_122
# ?????
value = 0
# ????????
case @parameters[3]
when 0 # ??
value = @parameters[4]
when 1 # ??
value = $game_variables[@parameters[4]]
when 2 # ??
value = @parameters[4] + rand(@parameters[5] - @parameters[4] + 1)
when 3 # ????
value = $game_party.item_number(@parameters[4])
when 4 # ????
actor = $game_actors[@parameters[4]]
if actor != nil
case @parameters[5]
when 0 # ???
value = actor.level
when 1 # EXP
value = actor.exp
when 2 # HP
value = actor.hp
when 3 # SP
value = actor.sp
when 4 # MaxHP
value = actor.maxhp
when 5 # MaxSP
value = actor.maxsp
when 6 # ??
value = actor.str
when 7 # ???
value = actor.dex
when 8 # ???
value = actor.agi
when 9 # ??
value = actor.int
when 10 # ???
value = actor.atk
when 11 # ????
value = actor.pdef
when 12 # ????
value = actor.mdef
when 13 # ????
value = actor.eva
end
end
when 5 # ????
enemy = $game_troop.enemies[@parameters[4]]
if enemy != nil
case @parameters[5]
when 0 # HP
value = enemy.hp
when 1 # SP
value = enemy.sp
when 2 # MaxHP
value = enemy.maxhp
when 3 # MaxSP
value = enemy.maxsp
when 4 # ??
value = enemy.str
when 5 # ???
value = enemy.dex
when 6 # ???
value = enemy.agi
when 7 # ??
value = enemy.int
when 8 # ???
value = enemy.atk
when 9 # ????
value = enemy.pdef
when 10 # ????
value = enemy.mdef
when 11 # ????
value = enemy.eva
end
end
when 6 # ??????
character = get_character(@parameters[4])
if character != nil
case @parameters[5]
when 0 # X ??
value = character.x
when 1 # Y ??
value = character.y
when 2 # ??
value = character.direction
when 3 # ?? X ??
value = character.screen_x
when 4 # ?? Y ??
value = character.screen_y
when 5 # ????
value = character.terrain_tag
end
end
when 7 # ???
case @parameters[4]
when 0 # ??? ID
value = $game_map.map_id
when 1 # ??????
value = $game_party.actors.size
when 2 # ????
value = $game_party.gold
when 3 # ??
value = $game_party.steps
when 4 # ?????
value = Graphics.frame_count / Graphics.frame_rate
when 5 # ????
value = $game_system.timer / Graphics.frame_rate
when 6 # ?????
value = $game_system.save_count
end
end
# ???????????
for i in @parameters[0] .. @parameters[1]
# ?????
case @parameters[2]
when 0 # ??
$game_variables[i] = value
when 1 # ??
$game_variables[i] += value
when 2 # ??
$game_variables[i] -= value
when 3 # ??
$game_variables[i] *= value
when 4 # ??
if value != 0
$game_variables[i] /= value
end
when 5 # ??
if value != 0
$game_variables[i] %= value
end
end
# ??????
if $game_variables[i] > 99999999
$game_variables[i] = 99999999
end
# ??????
if $game_variables[i] < -99999999
$game_variables[i] = -99999999
end
Network::Main.send("<10>$game_variables[#{i}] = #{$game_variables[i]}</10>\n") if i > User_Edit::STARTNETVAR
end
# ??????????
$game_map.need_refresh = true
# ??
return true
end
#--------------------------------------------------------------------------
# ? Self-Switches
#--------------------------------------------------------------------------
def command_123
# ???? ID ??????
if @event_id > 0
# ?????????????
key = [$game_map.map_id, @event_id, @parameters[0]]
# ??????????
$game_self_switches[key] = (@parameters[1] == 0)
end
# ??????????
$game_map.need_refresh = true
# ??
return true
end
end
#==============================================================================
# ¦ Interpreter
#------------------------------------------------------------------------------
# ???????????????????????????? Game_System ??
# ?? Game_Event ??????????????
#==============================================================================
class Interpreter
#--------------------------------------------------------------------------
# ? Switches
#--------------------------------------------------------------------------
def command_121
# ???????????
for i in @parameters[0] .. @parameters[1]
# ???????
$game_switches[i] = (@parameters[2] == 0)
Network::Main.socket.send("<10>$game_switches[#{i}] = [email=#{@parameters[2]#{@parameters[2[/email]] == 0}</10>\n") if i > User_Edit::STARTNETSWITCH
end
# ??????????
$game_map.need_refresh = true
# ??
return true
end
#--------------------------------------------------------------------------
# ? Variables
#--------------------------------------------------------------------------
def command_122
# ?????
value = 0
# ????????
case @parameters[3]
when 0 # ??
value = @parameters[4]
when 1 # ??
value = $game_variables[@parameters[4]]
when 2 # ??
value = @parameters[4] + rand(@parameters[5] - @parameters[4] + 1)
when 3 # ????
value = $game_party.item_number(@parameters[4])
when 4 # ????
actor = $game_actors[@parameters[4]]
if actor != nil
case @parameters[5]
when 0 # ???
value = actor.level
when 1 # EXP
value = actor.exp
when 2 # HP
value = actor.hp
when 3 # SP
value = actor.sp
when 4 # MaxHP
value = actor.maxhp
when 5 # MaxSP
value = actor.maxsp
when 6 # ??
value = actor.str
when 7 # ???
value = actor.dex
when 8 # ???
value = actor.agi
when 9 # ??
value = actor.int
when 10 # ???
value = actor.atk
when 11 # ????
value = actor.pdef
when 12 # ????
value = actor.mdef
when 13 # ????
value = actor.eva
end
end
when 5 # ????
enemy = $game_troop.enemies[@parameters[4]]
if enemy != nil
case @parameters[5]
when 0 # HP
value = enemy.hp
when 1 # SP
value = enemy.sp
when 2 # MaxHP
value = enemy.maxhp
when 3 # MaxSP
value = enemy.maxsp
when 4 # ??
value = enemy.str
when 5 # ???
value = enemy.dex
when 6 # ???
value = enemy.agi
when 7 # ??
value = enemy.int
when 8 # ???
value = enemy.atk
when 9 # ????
value = enemy.pdef
when 10 # ????
value = enemy.mdef
when 11 # ????
value = enemy.eva
end
end
when 6 # ??????
character = get_character(@parameters[4])
if character != nil
case @parameters[5]
when 0 # X ??
value = character.x
when 1 # Y ??
value = character.y
when 2 # ??
value = character.direction
when 3 # ?? X ??
value = character.screen_x
when 4 # ?? Y ??
value = character.screen_y
when 5 # ????
value = character.terrain_tag
end
end
when 7 # ???
case @parameters[4]
when 0 # ??? ID
value = $game_map.map_id
when 1 # ??????
value = $game_party.actors.size
when 2 # ????
value = $game_party.gold
when 3 # ??
value = $game_party.steps
when 4 # ?????
value = Graphics.frame_count / Graphics.frame_rate
when 5 # ????
value = $game_system.timer / Graphics.frame_rate
when 6 # ?????
value = $game_system.save_count
end
end
# ???????????
for i in @parameters[0] .. @parameters[1]
# ?????
case @parameters[2]
when 0 # ??
$game_variables[i] = value
when 1 # ??
$game_variables[i] += value
when 2 # ??
$game_variables[i] -= value
when 3 # ??
$game_variables[i] *= value
when 4 # ??
if value != 0
$game_variables[i] /= value
end
when 5 # ??
if value != 0
$game_variables[i] %= value
end
end
# ??????
if $game_variables[i] > 99999999
$game_variables[i] = 99999999
end
# ??????
if $game_variables[i] < -99999999
$game_variables[i] = -99999999
end
Network::Main.send("<10>$game_variables[#{i}] = #{$game_variables[i]}</10>\n") if i > User_Edit::STARTNETVAR
end
# ??????????
$game_map.need_refresh = true
# ??
return true
end
#--------------------------------------------------------------------------
# ? Self-Switches
#--------------------------------------------------------------------------
def command_123
# ???? ID ??????
if @event_id > 0
# ?????????????
key = [$game_map.map_id, @event_id, @parameters[0]]
# ??????????
$game_self_switches[key] = (@parameters[1] == 0)
end
# ??????????
$game_map.need_refresh = true
# ??
return true
end
end
- Sistema pet:
- Simples a unica difereca que você ira usar uma SWITCH GLOBAL então quando você ativar o pet todos os verão então é bem simples crie um NPC os pets so poderão ser acionados ao falar com um NPC famos dizer que ele incuba o seu ovo (XD) 1º condição caso o tão personagem tem ovo de esporo então o NPC ira ligar uma Switch acima do 1000 que seria global então ao lado dese NPC tera um evento explo: um esporo progamado da seguinte forma Switch:1001 Tipo: Seguir Heroi , Vel.:Rapido e Freq.:Muito Alta então quando ativar o Pet todos verão caso esteja confuso siga estas imagens.
[Tens de ter uma conta e sessão iniciada para poderes visualizar esta imagem]
- Opções especiais:
- [Tens de ter uma conta e sessão iniciada para poderes visualizar esta imagem]
Opções especiais poden ser encontrada na demo Opções especiais as Opções especiais são como Fome Sede para o pet fugir ou morrer estão em um projeto off-line e as Switch não podem ser global pois ce um player alimentou seu pet isso Dara o efeito de que todos os outros jogadores tivessem alimentado seus pets