LM² - Level Equip:
A pedido de quimera555, criei um sistema em que é necessario um nível mínimo para equipar armas e armaduras.
Screen:
A pedido de quimera555, criei um sistema em que é necessario um nível mínimo para equipar armas e armaduras.
Screen:
- Screen:
Clique aqui para Screen
Tutorial Básico:
Tutorial Cliente:
Primeiramente insiram um novo script com o código do link abaixo.
Agora vem a parte complexa.
Procure pela linha (ctrl+shift+f):
Abaixo dela coloque:
Procure por:
Abaixo adicione:
Procure por:
Abaixo adicione:
Agora esta pronto para uso, no script que foi inserido é onde se configura o nível requerido para cada equipamento, bem como a mensagem para quando o equipamento esta abaixo do nível, e também o texto que vai na janela de ajuda.
Como configurar o nível requerido é explicado no próprio script.
Tutorial Servidor (Créditos Valentine):
Links:
Código
Creditos:
A mim por criar, ao Valentine pela configuração do Servidor
Qualquer erro deverá ser reportado. Qualquer duvida leiam minha assinatura.
Tutorial Cliente:
Primeiramente insiram um novo script com o código do link abaixo.
Agora vem a parte complexa.
Procure pela linha (ctrl+shift+f):
- Código:
return unless @actor.equippable?($mouse.object)
Abaixo dela coloque:
- Código:
weapon_level = LMM_LevelEquip::WEAPON_LEVEL[$mouse.object.id]
armor_level = LMM_LevelEquip::ARMOR_LEVEL[$mouse.object.id]
if (weapon_level != nil and weapon_level > $game_party.actors[0].level) or (armor_level != nil and armor_level > $game_party.actors[0].level )
$windows[:chat].write(LMM_LevelEquip::LVL_ERROR, 5)
return
end
Procure por:
- Código:
@help_sprite.bitmap.draw_text(136, 90, 25, 18, $data_weapons[object.id].mdef.to_s, 2)
Abaixo adicione:
- Código:
@help_sprite.bitmap.draw_text(15, 108, 60, 18, LMM_LevelEquip::TEXT_LEVEL) if LMM_LevelEquip::WEAPON_LEVEL[object.id] != nil
@help_sprite.bitmap.draw_text(136, 108, 25, 18, LMM_LevelEquip::WEAPON_LEVEL[object.id].to_s, 2) if LMM_LevelEquip::WEAPON_LEVEL[object.id] != nil
Procure por:
- Código:
@help_sprite.bitmap.draw_text(136, 72, 25, 18, $data_armors[object.id].mdef.to_s, 2)
Abaixo adicione:
- Código:
@help_sprite.bitmap.draw_text(15, 90, 60, 18, LMM_LevelEquip::TEXT_LEVEL) if LMM_LevelEquip::ARMOR_LEVEL[object.id] != nil
@help_sprite.bitmap.draw_text(136, 90, 25, 18, LMM_LevelEquip::ARMOR_LEVEL[object.id].to_s, 2) if LMM_LevelEquip::ARMOR_LEVEL[object.id] != nil
Agora esta pronto para uso, no script que foi inserido é onde se configura o nível requerido para cada equipamento, bem como a mensagem para quando o equipamento esta abaixo do nível, e também o texto que vai na janela de ajuda.
Como configurar o nível requerido é explicado no próprio script.
Tutorial Servidor (Créditos Valentine):
Valentine escreveu:Só não esqueça de configurar o servidor.
1) No arquivo Settings.txt, adicione:
1 e 5 são exemplos de ID de armas/protetores no database do cliente, enquanto 20 e 40 são exemplos de nível necessário para equipar essas armas/protetores.
- Código:
WEAPONLEVEL = { [1] = 20, [5] = 40 }
ARMORLEVEL = { [1] = 20, [5] = 40 }
Note que eu não usei underline, pois, diferentemente da linguagem Ruby, Lua não usa underline para separar nomes compostos.
2) No arquivo handedata.lua, procure por:
Pule uma linha e coloque o seguinte código:
- Código:
if equiptype == EQUIPSHIELD and find(TWOHANDEDWEAPONS, player.equips[EQUIPWEAPON]) then return end
- Código:
if equiptype == EQUIPWEAPON and WEAPONLEVEL[id] ~= nil and WEAPONLEVEL[id] > player.level then return end
if equiptype ~= EQUIPWEAPON and ARMORLEVEL[id] ~= nil and ARMORLEVEL[id] > player.level then return end
Agora o jogo está protegido contra eventuais ataques de hackers que tentem burlar o requisito de nível desencripitando o cliente.
Links:
Código
Creditos:
A mim por criar, ao Valentine pela configuração do Servidor
Qualquer erro deverá ser reportado. Qualquer duvida leiam minha assinatura.
Última edição por LeonMM em Sáb Set 02, 2017 12:33 pm, editado 5 vez(es)