101-compat bugando o servidor
-
Quem Está Navegando 0 membros estão online
Nenhum usuário registrado visualizando esta página.
-
Conteúdo Similar
-
Por NewAge
O script não distribui pontos em magic com o comando !points add, magic, 1, tentei adicionar magic no local skillids, só que não sei o número que aumenta o magic level. Se alguém puder ajudar, rep +
-
Por NewAge
Eu queria que esse script fizesse o NPC vender itens no shop e tb dar quests pros players, só que quando ligo o servidor da um erro no console, < unknown script file > e o NPC não responde. Alguém sabe resolver?
local keywordHandler = KeywordHandler:new() local npcHandler = NpcHandler:new(keywordHandler) NpcSystem.parseParameters(npcHandler)[/font][/color] [color=#282828][font=helvetica, arial, sans-serif]-- OTServ event handling functions start function onCreatureAppear(cid) npcHandler:onCreatureAppear(cid) end function onCreatureDisappear(cid) npcHandler:onCreatureDisappear(cid) end function onCreatureSay(cid, type, msg) npcHandler:onCreatureSay(cid, type, msg) end function onThink() npcHandler:onThink() end -- OTServ event handling functions end local shopModule = ShopModule:new() npcHandler:addModule(shopModule) shopModule:addBuyableItem({'lemonade', 'lemondrink', 'limonada'}, 2006, 2, 5, 'lemonade') shopModule:addBuyableItem({'beer', 'cerveja'}, 2006, 3, 3, 'beer') shopModule:addBuyableItem({'milk', 'leite'}, 2006, 2, 6, 'milk') shopModule:addBuyableItem({'rum'}, 2006, 3, 27, 'rum') shopModule:addBuyableItem({'bread'}, 2689, 3) shopModule:addBuyableItem({'ham'}, 2671, 5) shopModule:addBuyableItem({'meat'}, 2666, 5) shopModule:addBuyableItem({'grapes'}, 2681, 3) shopModule:addBuyableItem({'red apple'}, 2674, 3) npcHandler:addModule(FocusModule:new()) [/font][/color] [color=#282828][font=helvetica, arial, sans-serif]local boromir = 6000 local boromir2 = 6001 local boromir3 = 61254 text = "5 Meat 5 Bread 10 Blueberries" -- Texto do papel lid = 1954 -- ID do Papel[/font][/color] [color=#282828][font=helvetica, arial, sans-serif]if msgcontains(msg, 'ajudar') and (getPlayerStorageValue(cid, 61254) == 1) then npcHandler:say("Você pode conseguir um pouco de comida para mim? Estou muito ocupado e não tenho tempo para ir procurar.", cid) talkState[talkUser] = 0 elseif msgcontains(msg, 'yes') or msgcontains(msg, 'sim') then setPlayerStorageValue(cid, boromir, 1) setPlayerStorageValue(cid, boromir3, 2) setPlayerStorageValue(cid, boromir2, 1) letter = doPlayerAddItem(cid, lid) doSetItemText(letter, text) doPlayerPopupFYI(cid, "Nova quest iniciada! Quest Log atualizado: Ajudando Zio") npcHandler:say("Tudo que preciso está escrito neste papel.", cid) talkState[talkUser] = 0 elseif msgcontains(msg, 'ajudar') and (getPlayerStorageValue(cid, 61254) == 2) then npcHandler:say("Você conseguiu todos os itens da lista?", cid) talkState[talkUser] = 0 elseif msgcontains(msg, 'yes') or msgcontains(msg, 'sim') and (getPlayerStorageValue(cid, 61254) == 2) then npcHandler:say("Muito obrigado, aqui está sua recompensa.", cid) talkState[talkUser] = 0 setPlayerStorageValue(cid, boromir2, 2) setPlayerStorageValue(cid, boromir3, 3) elseif msgcontains(msg, 'yes') or msgcontains(msg, 'sim') and (getPlayerStorageValue(cid, 61254) == 3) then npcHandler:say("Você já me ajudou, por enquanto não preciso da sua ajuda.", cid) talkState[talkUser] = 0 elseif msgcontains(msg, 'ajudar') and (getPlayerStorageValue(cid, 61254) == 3) then npcHandler:say("Você já me ajudou, por enquanto não preciso da sua ajuda.", cid) talkState[talkUser] = 0 end return TRUE end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new())[/font][/color] [color=#282828][font=helvetica, arial, sans-serif]
-
Por NewAge
Eu quero um script em que apareça tiles de swamp no local indicado na imagem e depois de 10 segundos os tiles de swamp sumam e apareçam tiles de terra id 354.
Esse primeiro script criava apenas bordas do swamp e no meio aparecia terra (id 354), quando deveria aparecer tiles de swamp e apenas depois de 10 segundos serem removidos e substituídos por tiles de terra.
function wall()[/font][/color] [color=#282828][font=helvetica, arial, sans-serif]local wallTab = { {4693, {x = 710, y = 544, z = 7}}, {4714, {x = 710, y = 543, z = 7}}, {4714, {x = 709, y = 544, z = 7}}, {4714, {x = 710, y = 542, z = 7}}, {4693, {x = 710, y = 543, z = 7}}, {4719, {x = 712, y = 542, z = 7}}, {4716, {x = 712, y = 541, z = 7}}, {4693, {x = 710, y = 542, z = 7}}, {4693, {x = 711, y = 544, z = 7}}, {4693, {x = 711, y = 543, z = 7}}, {4693, {x = 711, y = 542, z = 7}}, {4693, {x = 711, y = 541, z = 7}}, {4693, {x = 710, y = 541, z = 7}}, {4693, {x = 709, y = 542, z = 7}}, {4713, {x = 709, y = 543, z = 7}}, {4716, {x = 712, y = 541, z = 7}}, {4716, {x = 712, y = 542, z = 7}}, {4719, {x = 712, y = 540, z = 7}}, {4718, {x = 708, y = 543, z = 7}} }[/font][/color] [color=#282828][font=helvetica, arial, sans-serif]for i = 1, #wallTab do if getTileItemById(wallTab[i][2], wallTab[i][1]).uid > 0 then doRemoveItem(getTileItemById(wallTab[i][2], wallTab[i][1]).uid) doCreateItem(354, 1, wallTab[i][2]) else doCreateItem(wallTab[i][1], 1, wallTab[i][2]) doCreateItem(354, 1, wallTab[i][2]) end end end[/font][/color] [color=#282828][font=helvetica, arial, sans-serif]function onUse(cid, item, fromPosition, itemEx, toPosition)[/font][/color] [color=#282828][font=helvetica, arial, sans-serif]if getGlobalStorageValue(8273) > 0 then doPlayerSendTextMessage(cid, 27, "Já estão usando a armadilha.") return true end[/font][/color] [color=#282828][font=helvetica, arial, sans-serif]if getPlayerStorageValue(cid, 8274) > 0 then doPlayerSendCancel(cid, "Você já ativou uma vez.") return true end[/font][/color] [color=#282828][font=helvetica, arial, sans-serif]if item.uid == 1509 and itemEx.uid == 1510 then wall() addEvent(wall, 10 * 1000) doPlayerSendTextMessage(cid, 27, "Armadilha ativa.") setPlayerStorageValue(cid, 8274, 1) doSendMagicEffect(toPosition, 14) setGlobalStorageValue(8273, 1) addEvent(setGlobalStorageValue, 10 * 1000, 8273, 0) end return true end[/font][/color] [color=#282828][font=helvetica, arial, sans-serif] Ai depois tentei com esse script. Ele cria os tiles de swamp certinho, mas depois de 10 segundos apenas as bordas do swamp desaparecem e não é criado terra por cima dos tiles de swamp. function terra()[/font][/color] [color=#282828][font=helvetica, arial, sans-serif]local terraTab = { {354, {x = 710, y = 544, z = 7}}, {354, {x = 710, y = 543, z = 7}}, {354, {x = 709, y = 544, z = 7}}, {354, {x = 710, y = 542, z = 7}}, {354, {x = 710, y = 543, z = 7}}, {354, {x = 712, y = 542, z = 7}}, {354, {x = 712, y = 541, z = 7}}, {354, {x = 710, y = 542, z = 7}}, {354, {x = 711, y = 544, z = 7}}, {354, {x = 711, y = 543, z = 7}}, {354, {x = 711, y = 542, z = 7}}, {354, {x = 711, y = 541, z = 7}}, {354, {x = 710, y = 541, z = 7}}, {354, {x = 709, y = 542, z = 7}}, {354, {x = 709, y = 543, z = 7}}, {354, {x = 712, y = 541, z = 7}}, {354, {x = 712, y = 542, z = 7}}, {354, {x = 712, y = 540, z = 7}}, {354, {x = 708, y = 543, z = 7}} }[/font][/color] [color=#282828][font=helvetica, arial, sans-serif]for w = 1, #terraTab do addEvent(doCreateItem, 10 * 1000, terraTab[w][1], 1, terraTab[w][2]) end end[/font][/color] [color=#282828][font=helvetica, arial, sans-serif]function wall()[/font][/color] [color=#282828][font=helvetica, arial, sans-serif]local wallTab = { {4693, {x = 710, y = 544, z = 7}}, {4714, {x = 710, y = 543, z = 7}}, {4714, {x = 709, y = 544, z = 7}}, {4714, {x = 710, y = 542, z = 7}}, {4693, {x = 710, y = 543, z = 7}}, {4719, {x = 712, y = 542, z = 7}}, {4716, {x = 712, y = 541, z = 7}}, {4693, {x = 710, y = 542, z = 7}}, {4693, {x = 711, y = 544, z = 7}}, {4693, {x = 711, y = 543, z = 7}}, {4693, {x = 711, y = 542, z = 7}}, {4693, {x = 711, y = 541, z = 7}}, {4693, {x = 710, y = 541, z = 7}}, {4693, {x = 709, y = 542, z = 7}}, {4713, {x = 709, y = 543, z = 7}}, {4716, {x = 712, y = 541, z = 7}}, {4716, {x = 712, y = 542, z = 7}}, {4719, {x = 712, y = 540, z = 7}}, {4718, {x = 708, y = 543, z = 7}} }[/font][/color] [color=#282828][font=helvetica, arial, sans-serif]for i = 1, #wallTab do if getTileItemById(wallTab[i][2], wallTab[i][1]).uid > 0 then doRemoveItem(getTileItemById(wallTab[i][2], wallTab[i][1]).uid) else doCreateItem(wallTab[i][1], 1, wallTab[i][2]) end end end[/font][/color] [color=#282828][font=helvetica, arial, sans-serif]function onUse(cid, item, fromPosition, itemEx, toPosition)[/font][/color] [color=#282828][font=helvetica, arial, sans-serif]if getGlobalStorageValue(8273) > 0 then doPlayerSendTextMessage(cid, 27, "Já estão usando a armadilha.") return true end[/font][/color] [color=#282828][font=helvetica, arial, sans-serif]if getPlayerStorageValue(cid, 8274) > 0 then doPlayerSendCancel(cid, "Você já ativou uma vez.") return true end[/font][/color] [color=#282828][font=helvetica, arial, sans-serif]if item.uid == 1509 and itemEx.uid == 1510 then wall() terra() addEvent(wall, 10 * 1000) doPlayerSendTextMessage(cid, 27, "Armadilha ativa.") setPlayerStorageValue(cid, 8274, 1) doSendMagicEffect(toPosition, 14) setGlobalStorageValue(8273, 1) addEvent(setGlobalStorageValue, 10 * 1000, 8273, 0) end return true end
Se alguém conseguir me ajudar a consertar esse script, dou REP.
-
Por NewAge
To usando esse scripts pros players poderem nadar, o que acontece é que quando tem um monstro perto do jogador e ele corre pra agua, pra nadar, o monstro vem atras, só que ele fica andando sobre a agua. Queria saber se tem como arrumar isso
Movements
<movevent type="StepIn" itemid="4632-4643" event="script" value="swimm.lua"/> <movevent type="StepIn" itemid="7943-7954" event="script" value="swimm.lua"/> swimm.lua local outfit = {lookType = 267, lookHead = 0, lookBody = 0, lookLegs = 0, lookFeet = 0, lookTypeEx = 0, lookAddons = 0} local BORDERS = { [4632] = {x = 0, y = -2, back = SOUTH}, [4633] = {x = -2, y = 0, back = EAST}, [4634] = {x = 0, y = 2, back = NORTH}, [4635] = {x = 2, y = 0, back = WEST}, [4636] = {x = 2, y = 1, back = WEST}, [4637] = {x = -2, y = 1, back = NORTH}, [4638] = {x = 2, y = -1, back = WEST}, [4639] = {x = -2, y = -1, back = EAST}, [4640] = {x = 2, y = 2, back = WEST}, [4641] = {x = -2, y = 2, back = NORTH}, [4642] = {x = 2, y = -2, back = WEST}, [4643] = {x = -2, y = -2, back = SOUTH}, [7943] = {x = 0, y = -2, back = SOUTH}, [7944] = {x = -2, y = 0, back = EAST}, [7945] = {x = 0, y = 2, back = NORTH}, [7946] = {x = 2, y = 0, back = WEST}, [7947] = {x = 2, y = 1, back = WEST}, [7948] = {x = -2, y = 1, back = NORTH}, [7949] = {x = 2, y = -1, back = WEST}, [7950] = {x = -2, y = -1, back = EAST}, [7951] = {x = 2, y = 2, back = WEST}, [7952] = {x = -2, y = 2, back = NORTH}, [7953] = {x = 2, y = -2, back = WEST}, [7954] = {x = -2, y = -2, back = SOUTH} } BORDERS[4828] = BORDERS[7943] BORDERS[4829] = BORDERS[7946] BORDERS[4830] = BORDERS[7945] BORDERS[4831] = BORDERS[7944] function onStepIn(cid, item, position, lastPosition, fromPosition, toPosition, actor) if(not isPlayer(cid)) then return true end local border = BORDERS[item.itemid] if(not border) then return false end local pos, newPos = getCreaturePosition(cid), {} newPos = pos newPos.x = pos.x + border.x newPos.y = pos.y + border.y if(hasCondition(cid, CONDITION_OUTFIT) and getCreatureOutfit(cid).lookType == outfit.lookType) then doMoveCreature(cid, border.back) doRemoveCondition(cid, CONDITION_OUTFIT) else if(doTileQueryAdd(cid, pos, 4) ~= RETURNVALUE_NOERROR) then return false end local tmp = getCreaturePosition(cid) doTeleportThing(cid, newPos) if(not isPlayerGhost(cid)) then doSendMagicEffect(tmp, CONST_ME_POFF) doSendMagicEffect(newPos, CONST_ME_WATERSPLASH) end doRemoveConditions(cid, true) doSetCreatureOutfit(cid, outfit, -1) end return true end
-
Posts Recomendados
Participe da conversa
Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.