
Gustavo12345
Membro
-
Registro em
-
Última visita
Histórico de Curtidas
-
Gustavo12345 deu reputação a Flavio S em (Resolvido)Setando storage por kill de monstro^
A verificação isPlayer(cid) é desnecessária tendo em vista que um monstro não pode matar outro. E daria erro caso não existisse o monstro informado na tabela, quando fosse setar a storage ...
local tb = { -- ["MONSTER"] = STORAGE, não se esqueça da virgula que é essencial pra funcionar ... ["Rat"] = 4651, } function onKill(cid, target) if not isMonster(target) then return false end local monster = tb[getCreatureName(target)] if monster then setPlayerStorageValue(cid, monster, 1) end return true end function onLogin(cid) registerCreatureEvent(cid, "bossKill") return true end -
Gustavo12345 deu reputação a luanluciano93 em (Resolvido)Setando storage por kill de monstro@Lumus, ficou legal seu script, porém não precisa do <script> <event name="boss"/> </script>, porque isso é adicionado aos monstros quando eles irão executar alguma função do creaturescript.
(eu falei movements lá encima, ta errado, é creaturescript)
No caso, se fosse pela função onDeath (ao morrer) poderia colocar em X mostro, como é onKill (ao matar) quem vai executar a função é o player, e você ja esta registrando o evento nele pela função onLogin.
-- <event type="login" name="bossLogin" script="boss.lua"/> -- <event type="kill" name="bossKill" script="boss.lua"/> function onKill(cid, target) local storage = 45010 -- valor da storage if getCreatureName(target) == "Demodras" then -- Nome do boss entre " ". setPlayerStorageValue(cid, storage, 1) end return true end function onLogin(cid) registerCreatureEvent(cid, "bossKill") return true end -
Gustavo12345 deu reputação a Lumus em (Resolvido)Setando storage por kill de monstrofunction onKill(cid, target) local stg = 45010 -- valor da storage if getCreatureName(target) == "Demodras" then -- Nome do boss entre " ". setPlayerStorageValue(cid, stg, 1) end return true end <event type="kill" name="boss" script="boss.lua"/> <script> <event name="boss"/> </script> player:registerEvent("boss") Não testei.
-
Gustavo12345 deu reputação a Caronte em Pedido de script para teleportAo matar o boss, ele não pode entrar no teleporte até ter 3 storages?
Preciso me preocupar onde ganha esse storage 12003 ?
ou você já tem ?
o que você realmente precisa ?
@Gustavo12345,
Fiz esse:
function onStepIn(cid, item, position, lastPosition, fromPosition, toPosition, actor) local BosPos = { x = 123, y = 456, z = 7 } -- posição da sala do primeiro boss local OldWidowPos = { x = 123, y = 456, z = 7 } -- posição da sala da the old widow if getPlayerStorageValue(cid,12001) == 1 and getPlayerStorageValue(cid,12002) ~= 1 then doTeleportThing(cid, BosPos) elseif getPlayerStorageValue(cid,12001) == 1 and getPlayerStorageValue(cid,12002) == 1 and getPlayerStorageValue(cid,12003) == 1 and getPlayerStorageValue(12004) ~= 1 then doTeleportThing(cid, OldWidowPos) else doTeleportThing(cid, fromPosition) end return true end que é o script só do teleport
-
Gustavo12345 deu reputação a Wakon em Suporte script npc task e questlog system bugs!Creio que no servidor que você pegou esse script tenha algo definido na lib para o npc de tasks, lá provavelmente é definido o "tasks" que o script não está encontrando no servidor novo.
-
Gustavo12345 deu reputação a Fir3element em (Resolvido)Pedido Tile limit's scriptconfig.lua, coloca o limite aqui:
tileLimit = 0
movements/scripts/closingdoor.lua, substitua o seu por esse:
function onStepOut(cid, item, position, fromPosition) if(getTileInfo(position).creatures > 0) then return true end local newPosition = {x = position.x, y = position.y, z = position.z} if(isInArray(verticalOpenDoors, item.itemid)) then newPosition.x = newPosition.x + 1 else newPosition.y = newPosition.y + 1 end doRelocate(position, newPosition) local tmpPos = position tmpPos.stackpos = -1 local i, tmpItem, tileCount = 1, {uid = 1}, getTileThingByPos(tmpPos) while(tmpItem.uid ~= 0 and i < tileCount) do tmpPos.stackpos = i tmpItem = getTileThingByPos(tmpPos) if(tmpItem.uid ~= item.uid and tmpItem.uid ~= 0 and not isMoveable(tmpItem.uid)) then doRemoveItem(tmpItem.uid) else i = i + 1 end end doTransformItem(item.uid, item.itemid - 1) return true end -
Gustavo12345 deu reputação a Dieguiin XP em (Resolvido)Galera skill bugado!vá em data/XML/vocations.xml apaga oque tem dentro e cole isso:
são seus vocations.xml que causa esse bug, esse aqui está 100% só você dar uma editada do seu gosto.
-
Gustavo12345 deu reputação a Dieguiin XP em (Resolvido)Items vip!após ter editado o item em items.xml você precisa adicionar a tag em movements.xml para dar os atributos!:
Aí você escolhe as vocations, level que poderá usar, muda o ID do item e o Slot no caso aqui está legs.