Hoje eu gostaria de apresentar um Passaport Script:
Testado em: TFS 0.3.6 e 0.4 Dev
setPlayerStorageValue(cid, 22201,1) - 22201 é a StorageID depois de usar o passaporte
if item.itemid == 1954 then - Passport Item ID. (1954 = Paper/Papel)
O que ele faz?
O script permite que um jogador que tenha usado um item (Passaport) entra no navio (Movements Scripts).
Se o jogador não usou o (Passaport Item), em seguida, ele receberá uma mensagem de retorno.
O item pode ser inserido na Donation Shop em seu ot, ou pode estar disponível na loja normal, dentro do jogo.
Vá em data/actions/scripts, crie um arquivo .lua com o nome de passaport e adicione isso -
function onUse(cid, item, frompos, item2, topos) if item.itemid == 1954 then local playerpos = getCreaturePosition(cid) doRemoveItem(item.uid,1) setPlayerStorageValue(cid,22201,1) doSendMagicEffect(playerpos, 12) doCreatureSay(cid, "Congratulation!, You have verified your passport, now you may enter selected ships!.", TALKTYPE_ORANGE_1) end end
Em actions.xml, adicione a tag -
<action itemid="1954" script="passport.lua" />
Agora vá em data/movements/scripts, crie um arquivo .lua com o nome de pasfloor e adicione isso -
function onStepIn(cid, item, position, fromPosition) if isPlayer(cid) == TRUE then if getPlayerStorageValue(cid, 22120) == -1 then doTeleportThing(cid, fromPosition, FALSE) doPlayerSendTextMessage(cid,22, "You cannot enter the ship without a passport!.") doSendMagicEffect(getPlayerPosition(cid), 2) else doPlayerSendTextMessage(cid,22, 'Your passport has been verified, you may enter the ship!.') doSendMagicEffect(getPlayerPosition(cid), 22) end end return TRUE end
Em movements.xml, adicione a seguinte tag -
<movevent type="StepIn" tileitem="0" itemid="9200" event="script" value="pasfloor.lua"/>
itemid = "9200" - Floor ID, verifique se você não esta usando em qualquer outro lugar.
Algumas Imagens (Apresentação):
Antes de usar o item -

Usando o item -

Depois de usar o item -

Créditos - X_Anero