Postado Julho 29, 2020 4 anos Em 29/07/2020 em 14:49, WooX disse: Ambos os scripts postados, tanto por mim quanto pelo outro membro são referente ao closingdoor.lua que fica em movements, o problema que você está tendo acredito que seja referente ao script door.lua que fica em actions, são duas coisas diferentes. @WooX estou usando o datapack do classic yurots.. Edit: Tive de refazer uma parte do doors.lua, fica aí para quem precisar: Citar local config = { maxLevel = getConfigInfo('maximumDoorLevel') } local horizontalDoors = {1214, 1222, 1226, 1230, 1236, 1240, 1244, 1248, 1254, 1258, 1262, 1542, 3537, 3539, 3541, 3543, 4918, 5085, 5100, 5102, 5104, 5106, 5118, 5120, 5122, 5124, 5136, 5139, 5280, 5287, 5291, 5295, 5518, 5734, 5746, 6197, 6201, 6205, 6209, 6254, 6258, 6262, 6266, 6796, 6800, 6893, 6895, 6897, 6899, 7035, 7037, 7039, 7041, 7057, 8546, 8550, 8554, 8558, 9170, 9174, 9272, 9276, 9280, 9284, 10273, 10277, 10281, 10285, 10470, 10472, 10476, 10474, 10777, 12094, 12190, 10781, 12096, 12196, 10783, 12098, 12194} local magicWallIds = {1497, 1499} local function removeMwall(toPosition) for _, id in ipairs(magicWallIds) do local item = getTileItemById(toPosition, id) if (item.uid ~= 0) then doRemoveItem(item.uid) end end end local function teleportFromDoor(cid, toPosition) removeMwall(toPosition) doTeleportThing(cid, toPosition) end function onUse(cid, item, fromPosition, itemEx, toPosition) if(fromPosition.x ~= CONTAINER_POSITION and isPlayerPzLocked(cid) and getTileInfo(fromPosition).protection) then doPlayerSendDefaultCancel(cid, RETURNVALUE_NOTPOSSIBLE) return true end local locked = DOORS[item.itemid] if(locked) then doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "It is locked.") return true end local door = getItemInfo(item.itemid) if(door.levelDoor > 0) then if(item.aid == 189) then if(not isPremium(cid)) then doPlayerSendTextMessage(cid, MESSAGE_EVENT_ADVANCE, "Only the worthy may pass.") return true end teleportFromDoor(cid, toPosition) return false end local gender = item.aid - 186 if(isInArray({PLAYERSEX_FEMALE, PLAYERSEX_MALE}, gender)) then if(gender ~= getPlayerSex(cid)) then doPlayerSendTextMessage(cid, MESSAGE_EVENT_ADVANCE, "Only the worthy may pass.") return true end teleportFromDoor(cid, toPosition) return false end local skull = item.aid - 180 if(skull >= SKULL_NONE and skull <= SKULL_BLACK) then if(skull ~= getCreatureSkullType(cid)) then doPlayerSendTextMessage(cid, MESSAGE_EVENT_ADVANCE, "Only the worthy may pass.") return true end teleportFromDoor(cid, toPosition) return false end local group = item.aid - 150 if(group >= 0 and group < 30) then if(group > getPlayerGroupId(cid)) then doPlayerSendTextMessage(cid, MESSAGE_EVENT_ADVANCE, "Only the worthy may pass.") return true end teleportFromDoor(cid, toPosition) return false end local vocation = item.aid - 100 if(vocation >= 0 and vocation < 50) then local vocationEx = getVocationInfo(getPlayerVocation(cid)) if(vocationEx.id ~= vocation and vocationEx.fromVocation ~= vocation) then doPlayerSendTextMessage(cid, MESSAGE_EVENT_ADVANCE, "Only the worthy may pass.") return true end teleportFromDoor(cid, toPosition) return false end if(item.aid == 190 or (item.aid >= 1000 and (item.aid - door.levelDoor) <= config.maxLevel and getPlayerLevel(cid) >= (item.aid - door.levelDoor))) then teleportFromDoor(cid, toPosition) return false end doPlayerSendTextMessage(cid, MESSAGE_EVENT_ADVANCE, "Only the worthy may pass.") return true end if(door.specialDoor) then if(item.aid == 100 or (item.aid ~= 0 and getCreatureStorage(cid, item.aid) ~= EMPTY_STORAGE)) then teleportFromDoor(cid, toPosition) return false end doPlayerSendTextMessage(cid, MESSAGE_EVENT_ADVANCE, "The door seems to be sealed against unwanted intruders.") return true end if(getTileInfo(toPosition).creatures > 0) then -- check only if there are any creatures local position = {x = toPosition.x, y = toPosition.y, z = toPosition.z, stackpos = STACKPOS_TOP_CREATURE} if isInArray(horizontalDoors, item.itemid) then position.y = position.y + 1 else position.x = position.x + 1 end removeMwall(position) local query = doTileQueryAdd(cid, position, 20) if(query == RETURNVALUE_NOTPOSSIBLE) then position.x = position.x - 1 position.y = position.y + 1 query = doTileQueryAdd(cid, position, 20) end if(query ~= RETURNVALUE_NOERROR) then doPlayerSendDefaultCancel(cid, query) return true end toPosition.stackpos = STACKPOS_TOP_CREATURE while(true) do local thing = getThingFromPosition(toPosition) if(thing.uid == 0) then break end teleportFromDoor(thing.uid, position) end end local field = getTileItemByType(toPosition, ITEM_TYPE_MAGICFIELD) if(field.uid ~= 0) then doRemoveItem(field.uid) end return door.closingDoor end Editado Julho 31, 2020 4 anos por Mecianosz (veja o histórico de edições)
Postado Julho 29, 2020 4 anos Autor 4 horas atrás, Mecianosz disse: @WooX estou usando o datapack do classic yurots.. saberia me dizer onde mudar para quebrar a mw? Já tentei até..... kkk.. Este é o actions/doors.lua Acredito que isso não seja um problema do datapack, mas sim algo especifico pra você, nesse caso eu iria recomendar criar um tópico separado, mas como vi que você já te criou, vou tentar te ajudar por lá. Nós somos aquilo que fazemos repetidamente. Excelência, não é um modo de agir, mas um hábito. Aristóteles
Postado Setembro 27, 2020 4 anos Bom tarde, estou com problemas no Emote Spell System, o mesmo parece não estar funcionando corretamente. pois mesmo usando o comando para ativa-lo as mensagens continuam saindo pelo default. Editado Setembro 27, 2020 4 anos por 4lotus (veja o histórico de edições)
Postado Outubro 4, 2020 4 anos Autor Em 27/09/2020 em 17:33, 4lotus disse: Bom tarde, estou com problemas no Emote Spell System, o mesmo parece não estar funcionando corretamente. pois mesmo usando o comando para ativa-lo as mensagens continuam saindo pelo default. É necessário uma alteração na source para que a talkaction funcione corretamente. Nós somos aquilo que fazemos repetidamente. Excelência, não é um modo de agir, mas um hábito. Aristóteles
Postado Outubro 11, 2020 4 anos Sou totalmente leigo em parte dos assuntos. O "erro" do questlog ao iniciar o servidor, eu precisaria compilar novamente o server alterando o quests.cpp? se sim, como faço isso?
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.