Pesquisar na Comunidade
Mostrando resultados para as tags ''action''.
Encontrado 1423 registros
-
fala galera é o seguinte tem um bau na minha quest tem gente q consegue pegar o item outros não, como resolver ???? o script é esse ou qualquer coisa como faço um novo script pra esse bau local specialQuests = { [2001] = 30015 --Annihilator } local questsExperience = { [30015] = 10000 } function onUse(cid, item, fromPosition, itemEx, toPosition) if(getPlayerCustomFlagValue(cid, PlayerCustomFlag_GamemasterPrivileges)) then doSendMagicEffect(getCreaturePosition(cid), CONST_ME_POFF, cid) return true end local storage = specialQuests[item.actionid] if(not storage) then storage = item.uid if(storage > 65535) then return false end end if(getPlayerStorageValue(cid, storage) > 0) then doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "It is empty.") return true end local items = {} local reward = 0 local size = isContainer(item.uid) and getContainerSize(item.uid) or 0 if(size == 0) then reward = doCopyItem(item, false) else for i = 0, size do local tmp = getContainerItem(item.uid, i) if(tmp.itemid > 0) then table.insert(items, tmp) end end end size = table.maxn(items) if(size == 1) then reward = doCopyItem(items[1], true) end local result = "" if(reward ~= 0) then local ret = getItemDescriptions(reward.uid) if(reward.type > 0 and isItemRune(reward.itemid)) then result = reward.type .. " charges " .. ret.name elseif(reward.type > 0 and isItemStackable(reward.itemid)) then result = reward.type .. " " .. ret.plural else result = ret.article .. " " .. ret.name end else if(size > 20) then reward = doCopyItem(item, false) elseif(size > then reward = getThing(doCreateItemEx(1988, 1)) else reward = getThing(doCreateItemEx(1987, 1)) end for i = 1, size do local tmp = doCopyItem(items, true) if(doAddContainerItemEx(reward.uid, tmp.uid) ~= RETURNVALUE_NOERROR) then print("[Warning] QuestSystem:", "Could not add quest reward") else local ret = ", " if(i == 2) then ret = " and " elseif(i == 1) then ret = "" end result = result .. ret ret = getItemDescriptions(tmp.uid) if(tmp.type > 0 and isItemRune(tmp.itemid)) then result = result .. tmp.type .. " charges " .. ret.name elseif(tmp.type > 0 and isItemStackable(tmp.itemid)) then result = result .. tmp.type .. " " .. ret.plural else result = result .. ret.article .. " " .. ret.name end end end end if(doPlayerAddItemEx(cid, reward.uid, false) ~= RETURNVALUE_NOERROR) then result = "You have found a reward weighing " .. getItemWeight(reward.uid) .. " oz. It is too heavy or you have not enough space." else result = "You have found " .. result .. "." setPlayerStorageValue(cid, storage, 1) if(questsExperience[storage] ~= nil) then doPlayerAddExp(cid, questsExperience[storage]) doSendAnimatedText(getCreaturePosition(cid), questsExperience[storage], TEXTCOLOR_WHITE) end end doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, result) return true end
-
Estou tendo um problema estou adicionando o systema de addons no meu server e estou adicionando tudo certinho em actions e itens.xml Quando fui testa um addons pra ve se deu certo! Deu este bug e no jogo fala como se o item nao tive-se ele ja foi adicionado certinho no cliente! BUG
-
Bom, não achei onde postar! Se estiver na área errada mova por favor! bom adaptei uma source para meu servidor... está tudo ok inicia normal, aparece que está online e etc... só que inicia com 1 único erro na distro [Error - CreatureEvent::configureEvent] No valid type for creature event.actionchannel perguntei à um amigo meu e ele disse que tem que adicionar uma função na source em creature event mas ele n tem tempo para adicionar para mim! alguém poderia me dar uma ajuda?
-
Bem, eu gostaria de um piso que teletransportasse a pessoa (se tivesse lvl 100) E uma action que se o player clicasse numa arvore ele tbm se teletransportava (se tiver lvl 100) Obrigado desde já!! Rep ++
-
function onKill(cid, target, lastHit)config = {NickBoss = "Ferumbras",StoragePorta = 666}if isMonster(target) then if getCreatureName(target) == config.NickBoss then setPlayerStorageValue(cid, config.StoragePorta, 1) doPlayerSendTextMessage(cid, 18, "'You defeated me..now you can open the door.") return true endendreturn trueend Action da porta function onUse(cid, item, fromPosition, itemEx, toPosition)if item.actionid == 666 thenif getPlayerStorageValue(cid, 666) ~= 1 thenreturn doPlayerSendTextMessage(cid, 27, "The door seems to be sealed against unwanted intruders.")endreturn trueend
-
GENTE , ESTOU COM ESSE ERRO GRAVE, NUNCA VI ESSE ERRO EM MINHA VIDA. ( EU MIGREI DO POKEDASH PARA OUTRO E COMEÇOU DAR ESSE BUG) AJUDA AE PESSOAL DA XTIBIA@@#3@@!! [14/04/2016 08:47:41] [Error - Action Interface] [14/04/2016 08:47:41] In a timer event called from: [14/04/2016 08:47:41] data/actions/scripts/catch.lua:onUse [14/04/2016 08:47:41] Description: [14/04/2016 08:47:41] data/lib/catch system.lua:401: attempt to index local 'arq' (a nil value) [14/04/2016 08:47:41] stack traceback: [14/04/2016 08:47:41] data/lib/catch system.lua:401: in function 'doIncreaseStatistics' [14/04/2016 08:47:41] data/lib/catch system.lua:237: in function <data/lib/catch system.lua:154>
-
Olá Primeiro Criar 1 arquivo com nome nome_do_arquivo.luaem servido/data/talkactions/scriptcomo funcionar como configuraradditem = 2159, addquantidade = 100, --- quantidade quer vai ser adicionador ---- additem será id do item quer vai ser adicionadorremoveitem = 2160, removequantidade = 100, --- remove item id do item quer vai ser removido ---- removequantidade quantidade quer vai ser removido do item quer precisarsó isso script: tag:
-
action SCRIPT para CheckPoint de teleports
um tópico no fórum postou matheusagropassos Actions e Talkactions
Olá amigos, Estou com um grande problema e não achei nada parecido aqui no TK. Segue o exemplo da imagem, o player vai ter um tp no templo e outro na quest, quando ele passar pelo tp1 ele vai ser teleportado para o X na direita do player salvando a sua posição de checkpoint, ao passar pelo tp2 ele irá ser teleportado para o X que será sua posição de checkpoint, o tp2 se encontrará no templo. Consistência: *só pode salvar uma vez, se ele entrar em outro checkpoint ele resetará sua posição para a ultima; *se não houver checkpoint, o player receberá uma mensagem de que não há checkpoint; *em cada tp ao teleportar o player recebe uma mensagem, com qualquer efeito, só pra saber como é o código do efeito; -
Ola boa tarde, eu fiz um evento para meu servidor, é tipo um castelo para guilds, puxa alavanca e ganha acesso a uma area de teleports exclusivos, ate aqui tud a funcionar correcto, só estou com um problema, tipo quando outra guild conquista o castelo os que estavam a upar na área do castelo não são teleportados para o templo, alguém me pode ajudar nisso? Tipo outra guild conquista o castelo, quem estava la a upar sera teleportado de imediato para o templo. alguém me pode ajudar? Alguem pode ajudar?
-
Olá, xTibianos. Hoje lhes trago mais uma lista de funções. Dessa vez é do TFS 1.1. Source functions - Funções da source addDamageCondition(condition, rounds, time, value) addEvent(callback, delay, ...) addOutfitCondition(condition, lookTypeEx, lookType, lookHead, lookBody, lookLegs, lookFeet) addOutfitCondition(condition, lookTypeEx, lookType, lookHead, lookBody, lookLegs, lookFeet[, lookAddons, lookMount]) canJoin(player) cleanMap() closeShopWindow(cid) Combat() combat:execute(creature, variant) combat:setArea(area) combat:setCallback(key, function) combat:setCondition(condition) combat:setFormula(type, mina, minb, maxa, maxb) combat:setOrigin(origin) combat:setParameter(key, value) Condition(conditionType[, conditionId = CONDITIONID_COMBAT]) condition:addDamage(rounds, time, value) condition:clone() condition:delete() condition:getEndTime() condition:getIcons() condition:getId() condition:getSubId() condition:getTicks() condition:getType() condition:setFormula(mina, minb, maxa, maxb) condition:setOutfit(lookTypeEx, lookType, lookHead, lookBody, lookLegs, lookFeet[, lookAddons[, lookMount]]) condition:setOutfit(outfit) condition:setParameter(key, value) condition:setTicks(ticks) Container(uid) container:addItem(itemId[, count/subType = 1[, index = INDEX_WHEREEVER[, flags = 0]]]) container:addItemEx(item[, index = INDEX_WHEREEVER[, flags = 0]]) container:getCapacity() container:getEmptySlots([recursive = false]) container:getItem(index) container:getItemCountById(itemId[, subType = -1]) container:getItemHoldingCount() container:getSize() container:hasItem(item) createCombatArea( {area}, <optional> {extArea} ) createCombatObject() createConditionObject(type) Creature(id or name or userdata) creature:addCondition(condition[, force = false]) creature:addHealth(healthChange) creature:addMana(manaChange[, animationOnLoss = false]) creature:canSee(position) creature:canSeeCreature(creature) creature:changeSpeed(delta) creature:getBaseSpeed() creature:getCondition(conditionType[, conditionId = CONDITIONID_COMBAT[, subId = 0]]) creature:getDamageMap() creature:getDescription(distance) creature:getDirection() creature:getFollowCreature() creature:getHealth() creature:getId() creature:getLight() creature:getMana() creature:getMaster() creature:getMaxHealth() creature:getMaxMana() creature:getName() creature:getOutfit() creature:getParent() creature:getPathTo(pos[, minTargetDist = 0[, maxTargetDist = 1[, fullPathSearch = true[, clearSight = true[, maxSearchDist = 0]]]]]) creature:getPosition() creature:getSkull() creature:getSpeed() creature:getSummons() creature:getTarget() creature:getTile() creature:isCreature() creature:isHealthHidden() creature:isInGhostMode() creature:isRemoved() Creature:onAreaCombat(tile, aggressive) or Creature.onAreaCombat(self, tile, aggressive) Creature:onChangeOutfit(outfit) or Creature.onChangeOutfit(self, outfit) Creature:onTargetCombat(target) or Creature.onTargetCombat(self, target) creature:registerEvent(name) creature:remove() creature:removeCondition(conditionType[, conditionId = CONDITIONID_COMBAT[, subId = 0[, force = false]]]) creature:say(text, type[, ghost = false[, target = nullptr[, position]]]) creature:setDirection(direction) creature:setDropLoot(doDrop) creature:setFollowCreature(followedCreature) creature:setHiddenHealth(hide) creature:setLight(color, level) creature:setMaster(master) creature:setMaxHealth(maxHealth) creature:setOutfit(outfit) creature:setSkull(skull) creature:setTarget(target) creature:teleportTo(position[, pushMovement = false]) creature:unregisterEvent(name) debugPrint(text) doAddContainerItem(uid, itemid, <optional> count/subtype) doAreaCombatCondition(cid, pos, area, condition, effect) doAreaCombatDispel(cid, pos, area, type, effect) doAreaCombatHealth(cid, type, pos, area, min, max, effect) doAreaCombatHealth(cid, type, pos, area, min, max, effect[, origin = ORIGIN_SPELL]) doAreaCombatMana(cid, pos, area, min, max, effect) doAreaCombatMana(cid, pos, area, min, max, effect[, origin = ORIGIN_SPELL]) doChallengeCreature(cid, target) doCombat(cid, combat, param) doCreateItem(itemid, <optional> type/count, pos) doCreateItem(itemid, type/count, pos) doCreateItemEx(itemid, <optional> count/subtype) doMoveCreature(cid, direction) doNpcSetCreatureFocus(cid) doPlayerAddItem(cid, itemid, <optional: default: 1> count, <optional: default: 1> canDropOnMap, <optional: default: 1>subtype) doPlayerAddItem(cid, itemid, <optional: default: 1> count/subtype, <optional: default: 1> canDropOnMap) doPlayerAddItem(uid, itemid, <optional: default: 1> count/subtype) doPlayerSetOfflineTrainingSkill(cid, skill) doPlayerSetOfflineTrainingSkill(cid, skillid) doSellItem(cid, itemid, amount, <optional> subtype, <optional> actionid, <optional: default: 1> canDropOnMap) doSetCreatureLight(cid, lightLevel, lightColor, time) doSetCreatureOutfit(cid, outfit, time) doSetItemOutfit(cid, item, time) doSetMonsterOutfit(cid, name, time) doTargetCombatCondition(cid, target, condition, effect) doTargetCombatDispel(cid, target, type, effect) doTargetCombatHealth(cid, target, type, min, max, effect) doTargetCombatHealth(cid, target, type, min, max, effect[, origin = ORIGIN_SPELL]) doTargetCombatMana(cid, target, min, max, effect) doTargetCombatMana(cid, target, min, max, effect[, origin = ORIGIN_SPELL) doTileAddItemEx(pos, uid) Game.createContainer(itemId, size[, position]) Game.createItem(itemId[, count[, position]]) Game.createMonster(monsterName, position[, extended = false[, force = false]]) Game.createNpc(npcName, position[, extended = false[, force = false]]) Game.createTile(position[, isDynamic = false]) Game.createTile(x, y, z[, isDynamic = false]) Game.getExperienceStage(level) Game.getGameState() Game.getHouses() Game.getMonsterCount() Game.getNpcCount() Game.getPlayerCount() Game.getPlayers() Game.getReturnMessage(value) Game.getSpectators(position[, multifloor = false[, onlyPlayer = false[, minRangeX = 0[, maxRangeX = 0[, minRangeY = 0[, maxRangeY = 0]]]]]]) Game.getTowns() Game.getWorldType() Game.loadMap(path) Game.setGameState(state) Game.setWorldType(type) Game.startRaid(raidName) getCreatureCondition(cid, condition[, subId]) getDepotId(uid) getDistanceTo(uid) getNpcCid() getNpcParameter(paramKey) getPlayerFlagValue(cid, flag) getPlayerInstantSpellCount(cid) getPlayerInstantSpellInfo(cid, index) getWaypointPosition(name) getWaypointPositionByName(name) getWorldLight() getWorldTime() getWorldUpTime() Group(id) group:getAccess() group:getFlags() group:getId() group:getMaxDepotItems() group:getMaxVipEntries() group:getName() Guild(id) guild:addMember(player) guild:addRank(id, name, level) guild:getId() guild:getMembersOnline() guild:getMotd() guild:getName() guild:getRankById(id) guild:getRankByLevel(level) guild:removeMember(player) guild:setMotd(motd) House(id) house:getAccessList(listId) house:getBedCount() house:getBeds() house:getDoorCount() house:getDoors() house:getExitPosition() house:getId() house:getName() house:getOwnerGuid() house:getRent() house:getTileCount() house:getTiles() house:getTown() house:setAccessList(listId, list) house:setOwnerGuid(guid[, updateDatabase = true]) isDepot(uid) isInArray(array, value) isInWar(cid, target) isMovable(uid) isMoveable(uid) isType(derived, base) isValidUID(uid) Item(uid) item:clone() item:decay() item:getActionId() item:getArticle() item:getAttribute(key) item:getCharges() item:getCount() item:getDescription(distance) item:getFluidType() item:getId() item:getName() item:getParent() item:getPluralName() item:getPosition() item:getSubType() item:getTile() item:getTopParent() item:getUniqueId() item:getWeight() item:hasAttribute(key) item:hasProperty(property) item:isItem() item:moveTo(position or cylinder) item:remove([count = -1]) item:removeAttribute(key) item:setActionId(actionId) item:setAttribute(key, value) item:split([count = 1]) item:transform(itemId[, count/subType = -1]) ItemType(id or name) itemType:getArmor() itemType:getArticle() itemType:getAttack() itemType:getCapacity() itemType:getCharges() itemType:getClientId() itemType:getDecayId() itemType:getDefense() itemType:getDescription() itemType:getElementDamage() itemType:getElementType() itemType:getExtraDefense() itemType:getFluidSource() itemType:getHitChance() itemType:getId() itemType:getName() itemType:getPluralName() itemType:getRequiredLevel() itemType:getShootRange() itemType:getSlotPosition() itemType:getTransformDeEquipId() itemType:getTransformEquipId() itemType:getType() itemType:getWeaponType() itemType:getWeight([count = 1]) itemType:hasSubType() itemType:isContainer() itemType:isCorpse() itemType:isDoor() itemType:isFluidContainer() itemType:isMovable() itemType:isReadable() itemType:isRune() itemType:isStackable() itemType:isWritable() ModalWindow(id, title, message) modalWindow:addButton(id, text) modalWindow:addChoice(id, text) modalWindow:getButtonCount() modalWindow:getChoiceCount() modalWindow:getDefaultEnterButton() modalWindow:getDefaultEscapeButton() modalWindow:getId() modalWindow:getMessage() modalWindow:getTitle() modalWindow:hasPriority() modalWindow:sendToPlayer(player) modalWindow:setDefaultEnterButton(buttonId) modalWindow:setDefaultEscapeButton(buttonId) modalWindow:setMessage(text) modalWindow:setPriority(priority) modalWindow:setTitle(text) Monster(id or userdata) monster:addFriend(creature) monster:addTarget(creature[, pushFront = false]) monster:getFriendCount() monster:getFriendList() monster:getSpawnPosition() monster:getTargetCount() monster:getTargetList() monster:getType() monster:isFriend(creature) monster:isIdle() monster:isInSpawnRange([position]) monster:isMonster() monster:isOpponent(creature) monster:isTarget(creature) monster:removeFriend(creature) monster:removeTarget(creature) monster:searchTarget([searchType = TARGETSEARCH_DEFAULT]) monster:selectTarget(creature) monster:setIdle(idle) MonsterType(id or name) monsterType:canPushCreatures() monsterType:canPushItems() monsterType:getArmor() monsterType:getAttackList() monsterType:getBaseSpeed() monsterType:getChangeTargetChance() monsterType:getChangeTargetSpeed() monsterType:getCombatImmunities() monsterType:getConditionImmunities() monsterType:getCorpseId() monsterType:getCreatureEvents() monsterType:getDefense() monsterType:getDefenseList() monsterType:getElementList() monsterType:getExperience() monsterType:getHealth() monsterType:getLight() monsterType:getLoot() monsterType:getManaCost() monsterType:getMaxHealth() monsterType:getMaxSummons() monsterType:getName() monsterType:getNameDescription() monsterType:getOutfit() monsterType:getRace() monsterType:getRunHealth() monsterType:getStaticAttackChance() monsterType:getSummonList() monsterType:getTargetDistance() monsterType:getVoices() monsterType:getYellChance() monsterType:getYellSpeedTicks() monsterType:isAttackable() monsterType:isConvinceable() monsterType:isHealthShown() monsterType:isHostile() monsterType:isIllusionable() monsterType:isPushable() monsterType:isSummonable() NetworkMessage() networkMessage:addByte(number) networkMessage:addDouble(number) networkMessage:addItem(item) networkMessage:addItemId(itemId) networkMessage:addPosition(position) networkMessage:addString(string) networkMessage:addU16(number) networkMessage:addU32(number) networkMessage:addU64(number) networkMessage:getByte() networkMessage:getPosition() networkMessage:getString() networkMessage:getU16() networkMessage:getU32() networkMessage:getU64() networkMessage:reset() networkMessage:sendToPlayer(player) networkMessage:skipBytes(number) Npc([id or name or userdata]) npc:closeShopWindow(player) npc:getParameter(key) npc:getSpeechBubble() npc:isNpc() npc:openShopWindow(cid, items, buyCallback, sellCallback) npc:setFocus(creature) npc:setMasterPos(pos[, radius]) npc:setSpeechBubble(speechBubble) onaddItem(moveitem, tileitem, pos) onAdvance(player, skill, oldLevel, newLevel) onBuy(player, itemid, count, amount, ignore, inbackpacks) onCastSpell(creature, var) onCastSpell(creature, var, isHotkey) onCreatureAppear(creature) onCreatureAppear(self, creature) onCreatureDisappear(creature) onCreatureDisappear(self, creature) onCreatureMove(creature, oldPos, newPos) onCreatureMove(self, creature, oldPosition, newPosition) onCreatureSay(creature, type, msg) onCreatureSay(self, creature, type, message) onDeath(creature, corpse, lasthitkiller, mostdamagekiller, lasthitunjustified, mostdamageunjustified) onDeEquip(player, item, slot) onEquip(player, item, slot) onExtendedOpcode(player, opcode, buffer) onGetPlayerMinMaxValues(...) onGetPlayerMinMaxValues(player, attackSkill, attackValue, attackFactor) onGetPlayerMinMaxValues(player, level, maglevel) onHealthChange(creature, attacker, primaryDamage, primaryType, secondaryDamage, secondaryType, origin) onJoin(player) onKill(creature, target) onLeave(player) onLogin(player) onLogout(player) onManaChange(creature, attacker, manaChange, origin) onModalWindow(player, modalWindowId, buttonId, choiceId) onPlayerCloseChannel(player) onPlayerEndTrade(player) onPrepareDeath(creature, killer) onRaid() onRecord(current, old) onRemoveItem(moveitem, tileitem, pos) onSay(player, words, param, type) onSpeak(player, type, message) onStepIn(creature, item, pos, fromPosition) onStepOut(creature, item, pos, fromPosition) onTargetCombat(creature, target) onTextEdit(player, item, text) onThink() onThink(creature, interval) onThink(self, interval) onTileCombat(creature, pos) onUse(player, item, fromPosition, target, toPosition, isHotkey) onUseWeapon(player, var) openShopWindow(cid, items, onBuy callback, onSell callback) os.mtime() party:addInvite(player) party:addMember(player) party:disband() party:getInviteeCount() party:getInvitees() party:getLeader() party:getMemberCount() party:getMembers() party:isSharedExperienceActive() party:isSharedExperienceEnabled() Party:onDisband() or Party.onDisband(self) Party:onJoin(player) or Party.onJoin(self, player) Party:onLeave(player) or Party.onLeave(self, player) party:removeInvite(player) party:removeMember(player) party:setLeader(player) party:setSharedExperience(active) party:shareExperience(experience) Player(id or name or userdata) player:addBlessing(blessing) player:addExperience(experience[, sendText = false]) player:addItem(itemId[, count = 1[, canDropOnMap = true[, subType = 1[, slot = CONST_SLOT_WHEREEVER]]]]) player:addItemEx(item[, canDropOnMap = false[, index = INDEX_WHEREEVER[, flags = 0]]]) player:addItemEx(item[, canDropOnMap = true[, slot = CONST_SLOT_WHEREEVER]]) player:addManaSpent(amount) player:addMapMark(position, type, description) player:addMoney(money) player:addMount(mountId) player:addOutfit(lookType) player:addOutfitAddon(lookType, addon) player:addPremiumDays(days) player:addSkillTries(skillType, tries) player:addSoul(soulChange) player:canLearnSpell(spellName) player:channelSay(speaker, type, text, channelId) player:forgetSpell(spellName) player:getAccountId() player:getAccountType() player:getBankBalance() player:getBaseMagicLevel() player:getCapacity() player:getClient() player:getContainerById(id) player:getContainerId(container) player:getContainerIndex(id) player:getDeathPenalty() player:getDepotChest(depotId[, autoCreate = false]) player:getEffectiveSkillLevel(skillType) player:getExperience() player:getFreeCapacity() player:getGroup() player:getGuid() player:getGuild() player:getGuildLevel() player:getGuildNick() player:getHouse() player:getInbox() player:getIp() player:getItemById(itemId, deepSearch[, subType = -1]) player:getItemCount(itemId[, subType = -1]) player:getLastLoginSaved() player:getLastLogout() player:getLevel() player:getMagicLevel() player:getManaSpent() player:getMaxSoul() player:getMoney() player:getParty() player:getPremiumDays() player:getSex() player:getSkillLevel(skillType) player:getSkillPercent(skillType) player:getSkillTries(skillType) player:getSkullTime() player:getSlotItem(slot) player:getSoul() player:getStamina() player:getStorageValue(key) player:getTown() player:getVocation() player:hasBlessing(blessing) player:hasLearnedSpell(spellName) player:hasMount(mountId) player:hasOutfit(lookType[, addon = 0]) player:isPlayer() player:isPzLocked() player:learnSpell(spellName) Player:onBrowseField(position) or Player.onBrowseField(self, position) Player:onGainExperience(source, exp, rawExp) Player:onGainSkillTries(skill, tries) Player:onLook(thing, position, distance) or Player.onLook(self, thing, position, distance) Player:onLookInBattleList(creature, position, distance) or Player.onLookInBattleList(self, creature, position, distance) Player:onLookInShop(itemType, count) or Player.onLookInShop(self, itemType, count) Player:onLookInTrade(partner, item, distance) or Player.onLookInTrade(self, partner, item, distance) Player:onLoseExperience(exp) Player:onMoveCreature(creature, fromPosition, toPosition) or Player.onMoveCreature(self, creature, fromPosition, toPosition) Player:onMoveItem(item, count, fromPosition, toPosition) or Player.onMoveItem(self, item, count, fromPosition, toPosition) Player:onTradeAccept(target, item, targetItem) Player:onTradeRequest(target, item) Player:onTurn(direction) or Player.onTurn(self, direction) player:openChannel(channelId) player:popupFYI(message) player:removeBlessing(blessing) player:removeExperience(experience[, sendText = false]) player:removeItem(itemId, count[, subType = -1[, ignoreEquipped = false]]) player:removeMoney(money) player:removeMount(mountId) player:removeOutfit(lookType) player:removeOutfitAddon(lookType, addon) player:removePremiumDays(days) player:save() player:sendChannelMessage(author, text, type, channelId) player:sendOutfitWindow() player:sendPrivateMessage(speaker, text[, type]) player:sendTextMessage(type, text[, position, primaryValue = 0, primaryColor = TEXTCOLOR_NONE[, secondaryValue = 0, secondaryColor = TEXTCOLOR_NONE]]) player:sendTutorial(tutorialId) player:setAccountType(accountType) player:setBankBalance(bankBalance) player:setCapacity(capacity) player:setGhostMode(enabled) player:setGroup(group) player:setGuild(guild) player:setGuildLevel(level) player:setGuildNick(nick) player:setMaxMana(maxMana) player:setSex(newSex) player:setSkullTime(skullTime) player:setStamina(stamina) player:setStorageValue(key, value) player:setTown(town) player:setVocation(id or name or userdata) player:showTextDialog(itemId[, text[, canWrite[, length]]]) Position([position]) Position([x = 0[, y = 0[, z = 0[, stackpos = 0]]]]) position:getDistance(positionEx) position:isSightClear(positionEx[, sameFloor = true]) position:sendDistanceEffect(positionEx, distanceEffect[, player = nullptr]) position:sendMagicEffect(magicEffect[, player = nullptr]) rawgetmetatable(metatableName) registerClass(className, baseClass, newFunction) registerEnum(value) registerEnumIn(tableName, value) registerGlobalMethod(functionName, function) registerGlobalVariable(name, value) registerMetaMethod(className, functionName, function) registerMethod(className, functionName, function) registerTable(tableName) registerVariable(tableName, name, value) saveServer() selfFollow(player) selfMove(direction) selfMoveTo(x,y,z) selfSay(words[, target]) selfTurn(direction) sendChannelMessage(channelId, type, message) sendGuildChannelMessage(guildId, type, message) setCombatArea(combat, area) setCombatCallBack(combat, key, function_name) setCombatCondition(combat, condition) setCombatFormula(combat, type, mina, minb, maxa, maxb) setCombatParam(combat, key, value) setConditionFormula(combat, mina, minb, maxa, maxb) setConditionFormula(condition, mina, minb, maxa, maxb) setConditionParam(condition, key, value) setmetatable(className, methodsTable) stopEvent(eventid) table.create(arrayLength, keyLength) Teleport(uid) teleport:getDestination() teleport:setDestination(position) Tile(position) Tile(x, y, z) tile:getBottomCreature() tile:getBottomVisibleCreature(creature) tile:getCreatureCount() tile:getCreatures() tile:getDownItemCount() tile:getFieldItem() tile:getGround() tile:getHouse() tile:getItemById(itemId[, subType = -1]) tile:getItemByTopOrder(topOrder) tile:getItemByType(itemType) tile:getItemCount() tile:getItemCountById(itemId[, subType = -1]) tile:getItems() tile:getPosition() tile:getThing(index) tile:getThingCount() tile:getThingIndex(thing) tile:getTopCreature() tile:getTopDownItem() tile:getTopItemCount() tile:getTopTopItem() tile:getTopVisibleCreature(creature) tile:getTopVisibleThing(creature) tile:hasFlag(flag) tile:hasProperty(property[, item]) tile:queryAdd(thing[, flags]) Town(id or name) town:getId() town:getName() town:getTemplePosition() Variant(number or string or position or thing) Variant:getNumber() Variant:getPosition() Variant:getString() version(CLIENT_VERSION_MIN) Vocation(id or name) vocation:getAttackSpeed() vocation:getBaseSpeed() vocation:getCapacityGain() vocation:getClientId() vocation:getDemotion() vocation:getDescription() vocation:getHealthGain() vocation:getHealthGainAmount() vocation:getHealthGainTicks() vocation:getId() vocation:getManaGain() vocation:getManaGainAmount() vocation:getManaGainTicks() vocation:getMaxSoul() vocation:getName() vocation:getPromotion() vocation:getRequiredManaSpent(magicLevel) vocation:getRequiredSkillTries(skillType, skillLevel) vocation:getSoulGainTicks() Data functions - Funções pra LUA Container.isContainer(self) Creature.getClosestFreePosition(self, position, extended) Creature.getPlayer(self) Creature.isItem(self) Creature.isMonster(self) Creature.isNpc(self) Creature.isPlayer(self) Creature.isTile(self) Creature:onAreaCombat(tile, isAggressive) Creature:onChangeOutfit(outfit) Creature:onTargetCombat(target) CreatureIndex(self, key) FocusModule.messageMatcher(keywords, message) FocusModule.onFarewell(cid, message, keywords, parameters) FocusModule.onGreet(cid, message, keywords, parameters) FocusModule:init(handler) FocusModule:new() Game.broadcastMessage(message, messageType) Game.convertIpToString(ip) Game.getReverseDirection(direction) Game.getSkillType(weaponType) Game.getStorageValue(key) Game.setStorageValue(key, value) Item.getType(self) Item.isContainer(self) Item.isCreature(self) Item.isPlayer(self) Item.isTeleport(self) Item.isTile(self) ItemIndex(self, key) ItemType.usesSlot(self, slot) KeywordHandler:addKeyword(keys, callback, parameters) KeywordHandler:getLastNode(cid) KeywordHandler:getRoot() KeywordHandler:moveUp(cid, steps) KeywordHandler:new() KeywordHandler:processMessage(cid, message) KeywordHandler:processNodeMessage(node, cid, message) KeywordHandler:reset(cid) KeywordModule:addKeyword(keywords, reply) KeywordModule:init(handler) KeywordModule:new() KeywordModule:parseKeywords(data) KeywordModule:parseParameters() KeywordNode:addChildKeyword(keywords, callback, parameters) KeywordNode:addChildKeywordNode(childNode) KeywordNode:checkMessage(message) KeywordNode:getKeywords() KeywordNode:getParameters() KeywordNode:getParent() KeywordNode:new(keys, func, param) KeywordNode:processMessage(cid, message) NpcHandler:addFocus(newFocus) NpcHandler:addModule(module) NpcHandler:cancelNPCTalk(events) NpcHandler:doNPCTalkALot(msgs, interval, pcid) NpcHandler:getCallback(id) NpcHandler:getMessage(id) NpcHandler:greet(cid) NpcHandler:isFocused(focus) NpcHandler:isInRange(cid) NpcHandler:new(keywordHandler) NpcHandler:onBuy(creature, itemid, subType, amount, ignoreCap, inBackpacks) NpcHandler:onCreatureAppear(creature) NpcHandler:onCreatureDisappear(creature) NpcHandler:onCreatureSay(creature, msgtype, msg) NpcHandler:onFarewell(cid) NpcHandler:onGreet(cid) NpcHandler:onPlayerCloseChannel(creature) NpcHandler:onPlayerEndTrade(creature) NpcHandler:onSell(creature, itemid, subType, amount, ignoreCap, inBackpacks) NpcHandler:onThink() NpcHandler:onTradeRequest(cid) NpcHandler:onWalkAway(cid) NpcHandler:parseMessage(msg, parseInfo) NpcHandler:processModuleCallback(id, ...) NpcHandler:releaseFocus(focus) NpcHandler:resetNpc(cid) NpcHandler:say(message, focus, publicize, shallDelay, delay) NpcHandler:setCallback(id, callback) NpcHandler:setKeywordHandler(newHandler) NpcHandler:setMaxIdleTime(newTime) NpcHandler:setMessage(id, newMessage) NpcHandler:unGreet(cid) NpcHandler:updateFocus() NpcSystem.getParameter(key) NpcSystem.parseParameters(npcHandler) Party:onDisband() Party:onJoin(player) Party:onLeave(player) Player.addSkillTries(...) Player.feed(self, food) Player.getClosestFreePosition(self, position, extended) Player.getDepotItems(self, depotId) Player.getLossPercent(self) Player.isPremium(self) Player.isUsingOtClient(self) Player.sendCancelMessage(self, message) Player.sendExtendedOpcode(self, opcode, buffer) Player:isPremium() Player:onBrowseField(position) Player:onGainExperience(source, exp, rawExp) Player:onGainSkillTries(skill, tries) Player:onLook(thing, position, distance) Player:onLookInBattleList(creature, distance) Player:onLookInShop(itemType, count) Player:onLookInTrade(partner, item, distance) Player:onLoseExperience(exp) Player:onMoveCreature(creature, fromPosition, toPosition) Player:onMoveItem(item, count, fromPosition, toPosition) Player:onTradeAccept(target, item, targetItem) Player:onTradeRequest(target, item) Player:onTurn(direction) Position.getNextPosition(self, direction, steps) Position.getTile(self) Position:getNextPosition(direction, steps) Position:moveUpstairs() ShopModule.messageMatcher(keywords, message) ShopModule.onConfirm(cid, message, keywords, parameters, node) ShopModule.onDecline(cid, message, keywords, parameters, node) ShopModule.requestTrade(cid, message, keywords, parameters, node) ShopModule.tradeItem(cid, message, keywords, parameters, node) ShopModule:addBuyableItem(names, itemid, cost, itemSubType, realName) ShopModule:addBuyableItemContainer(names, container, itemid, cost, subType, realName) ShopModule:addSellableItem(names, itemid, cost, realName, itemSubType) ShopModule:callbackOnBuy(cid, itemid, subType, amount, ignoreCap, inBackpacks) ShopModule:callbackOnModuleReset() ShopModule:callbackOnSell(cid, itemid, subType, amount, ignoreEquipped, _) ShopModule:getCount(message) ShopModule:getShopItem(itemId, itemSubType) ShopModule:init(handler) ShopModule:new() ShopModule:parseBuyable(data) ShopModule:parseBuyableContainers(data) ShopModule:parseParameters() ShopModule:parseSellable(data) ShopModule:reset() StdModule.bless(cid, message, keywords, parameters, node) StdModule.learnSpell(cid, message, keywords, parameters, node) StdModule.promotePlayer(cid, message, keywords, parameters, node) StdModule.say(cid, message, keywords, parameters, node) StdModule.travel(cid, message, keywords, parameters, node) Teleport.isTeleport(self) Tile.isCreature(self) Tile.isItem(self) Tile.isTile(self) TravelModule.bringMeTo(cid, message, keywords, parameters, node) TravelModule.listDestinations(cid, message, keywords, parameters, node) TravelModule.onConfirm(cid, message, keywords, parameters, node) TravelModule.onDecline(cid, message, keywords, parameters, node) TravelModule.travel(cid, message, keywords, parameters, node) TravelModule:addDestination(name, position, price, premium) TravelModule:init(handler) TravelModule:new() TravelModule:parseDestinations(data) TravelModule:parseParameters() broadcastMessage(message, messageType) canJoin(player) canPlayerLearnInstantSpell(cid, name) canPlayerWearOutfit(cid, lookType, addons) creatureSayCallback(cid, type, msg) destroyItem(cid, target, toPosition) doAddCondition(cid, conditionId) doAddContainerItemEx(uid, virtualId) doAddMapMark(cid, pos, type, description) doChangeSpeed(cid, delta) doChangeTypeItem(uid, newType) doConvinceCreature(cid, target) doCreateNpc(name, pos, ...) doCreateTeleport(itemId, destination, position) doCreatureAddHealth(cid, health) doCreatureChangeOutfit(cid, outfit) doCreatureSay(cid, text, type, ...) doCreatureSayWithDelay(cid, text, type, delay, e, pcid) doCreatureSayWithRadius(cid, text, type, radiusx, radiusy, position) doCreatureSetLookDir(cid, direction) doDecayItem(uid) doForceSummonCreature(name, pos) doMonsterChangeTarget(cid) doNpcSellItem(cid, itemid, amount, subType, ignoreCap, inBackpacks, backpack) doPlayerAddBlessing(cid, blessing) doPlayerAddExp(cid, exp, useMult, ...) doPlayerAddItemEx(cid, uid, ...) doPlayerAddMana(cid, mana, ...) doPlayerAddManaSpent(cid, mana) doPlayerAddMoney(cid, money) doPlayerAddMount(cid, mountId) doPlayerAddOutfit(cid, lookType, addons) doPlayerAddPremiumDays(cid, days) doPlayerAddSkillTry(cid, skillid, n) doPlayerAddSoul(cid, soul) doPlayerBuyItemContainer(cid, containerid, itemid, count, cost, charges) doPlayerFeed(cid, food) doPlayerJoinParty(cid, leaderId) doPlayerPopupFYI(cid, message) doPlayerRemOutfit(cid, lookType, addons) doPlayerRemoveItem(cid, itemid, count, ...) doPlayerRemoveMoney(cid, money) doPlayerRemoveMount(cid, mountId) doPlayerRemovePremiumDays(cid, days) doPlayerSellItem(cid, itemid, count, cost) doPlayerSendCancel(cid, text) doPlayerSendTextMessage(cid, type, text, ...) doPlayerSetBalance(cid, balance) doPlayerSetGuildLevel(cid, level) doPlayerSetGuildNick(cid, nick) doPlayerSetSex(cid, sex) doPlayerSetTown(cid, town) doPlayerSetVocation(cid, vocation) doPlayerTakeItem(cid, itemid, count) doRelocate(fromPos, toPos) doRemoveCondition(cid, conditionType, subId) doRemoveCreature(cid) doRemoveItem(uid, ...) doSendAnimatedText() doSendDistanceShoot(fromPos, toPos, distanceEffect, ...) doSendMagicEffect(pos, magicEffect, ...) doSendTutorial(cid, tutorialId) doSetCreatureDropLoot(cid, doDrop) doSetItemActionId(uid, actionId) doSetItemSpecialDescription(uid, desc) doSetItemText(uid, text) doSetMonsterTarget(cid, target) doShowTextDialog(cid, itemId, text) doSummonCreature(name, pos, ...) doTeleportThing(uid, dest, pushMovement) doTransformItem(uid, newItemId, ...) firstServerSaveWarning() getAccountNumberByPlayerName(name) getArticle(str) getBlessingsCost(level) getConfigInfo(info) getContainerCap(uid) getContainerCapById(itemId) getContainerItem(uid, slot) getContainerSize(uid) getCount(string) getCreatureBaseSpeed(cid) getCreatureHealth(cid) getCreatureMaster(cid) getCreatureMaxHealth(cid) getCreatureName(cid) getCreatureOutfit(cid) getCreaturePosition(cid) getCreatureSpeed(cid) getCreatureSummons(cid) getCreatureTarget(cid) getDistanceBetween(firstPosition, secondPosition) getExpForLevel(level) getFluidSourceType(itemId) getFormattedWorldTime() getGlobalStorageValue(key) getGuildId(guildName) getHouseAccessList(id, listId) getHouseByPlayerGUID(playerGUID) getHouseEntry(houseId) getHouseName(houseId) getHouseOwner(houseId) getHouseRent(id) getHouseTilesSize(houseId) getHouseTown(houseId) getIPByPlayerName(name) getItemDescriptions(itemId) getItemIdByName(name) getItemName(itemId) getItemRWInfo(uid) getItemWeight(itemId, ...) getItemWeightByUID(uid, ...) getMonsterFriendList(cid) getMonsterTargetList(cid) getMonthDayEnding(day) getMonthString(m) getOnlinePlayers() getPartyMembers(cid) getPlayerAccess(cid) getPlayerAccountType(cid) getPlayerBalance(cid) getPlayerBlessing(cid, blessing) getPlayerByName(name) getPlayerDepotItems(cid, depotId) getPlayerFood(cid) getPlayerFreeCap(cid) getPlayerGUID(cid) getPlayerGUIDByName(name) getPlayerGroupId(cid) getPlayerGuildId(cid) getPlayerGuildLevel(cid) getPlayerGuildName(cid) getPlayerGuildNick(cid) getPlayerGuildRank(cid) getPlayerIp(cid) getPlayerItemById(cid, deepSearch, itemId, ...) getPlayerItemCount(cid, itemId, ...) getPlayerLastLoginSaved(cid) getPlayerLearnedInstantSpell(cid, name) getPlayerLevel(cid) getPlayerLight(cid) getPlayerLookDir(cid) getPlayerLossPercent(cid) getPlayerMagLevel(cid) getPlayerMana(cid) getPlayerMasterPos(cid) getPlayerMaxMana(cid) getPlayerMoney(cid) getPlayerMount(cid, mountId) getPlayerName(cid) getPlayerParty(cid) getPlayerPosition(cid) getPlayerPremiumDays(cid) getPlayerSex(cid) getPlayerSkill(cid, skillId) getPlayerSkullType(cid) getPlayerSlotItem(cid, slot) getPlayerSoul(cid) getPlayerStorageValue(cid, key) getPlayerTown(cid) getPlayerVocation(cid) getPlayersByAccountNumber(accountNumber) getPlayersByIPAddress(ip, mask) getPromotedVocation(vocationId) getPvpBlessingCost(level) getSkillId(skillName) getSpectators(centerPos, rangex, rangey, multifloor, onlyPlayers) getThing(uid) getThingPos(uid) getThingfromPos(pos) getTibianTime() getTileHouseInfo(pos) getTileInfo(position) getTileItemById(position, itemId, ...) getTileItemByType(position, itemType) getTilePzInfo(position) getTileThingByPos(position) getTileThingByTopOrder(position, topOrder) getTopCreature(position) getTownId(townName) getTownName(townId) getTownTemplePosition(townId) getWorldCreatures(type) greetCallback(cid) hasProperty(uid, prop) internalBedTransform(item, targetItem, toPosition, ids) isContainer(uid) isCorpse(uid) isCreature(cid) isDruid(cid) isInRange(pos, fromPos, toPos) isItem(uid) isItemContainer(itemId) isItemDoor(itemId) isItemFluidContainer(itemId) isItemMovable(itemId) isItemRune(itemId) isItemStackable(itemId) isKnight(cid) isMonster(cid) isNpc(cid) isNumber(str) isPaladin(cid) isPlayer(cid) isPlayerGhost(cid) isPlayerPzLocked(cid) isPremium(cid) isSightClear(fromPos, toPos, floorCheck) isSorcerer(cid) isSummon(cid) msgcontains(message, keyword) onAddFocus(cid) onAddItem(moveitem, tileitem, position) onCastSpell(cid, var) onCastSpell(cid, var, isHotkey) onCastSpell(creature, var) onCastSpell(creature, var, isHotkey) onCastSpell(creature, variant, isHotkey) onCreatureAppear(cid) onCreatureDisappear(cid) onCreatureSay(cid, type, msg) onDeath(player, corpse, killer, mostDamage, unjustified, mostDamage_unjustified) onDeath(player, corpse, killer, mostDamageKiller, unjustified, mostDamageUnjustified) onExtendedOpcode(player, opcode, buffer) onGetFormulaValues(cid, level, maglevel) onGetFormulaValues(cid, skill, attack, factor) onGetFormulaValues(player, level, attack, factor) onLogin(player) onLogout(player) onRecord(current, old) onReleaseFocus(cid) onRemoveItem(item, tile, position) onSay(player, words, param) onSpeak(player, type, message) onStartup() onStepIn(creature, item, position, fromPosition) onStepOut(creature, item, position, fromPosition) onTargetCreature(creature, target) onTargetTile(creature, pos) onThink() onTime(interval) onUpdateDatabase() onUse(cid, item, fromPosition, target, toPosition, isHotkey) onUse(player, item, fromPosition, target, toPosition, isHotkey) onUseWeapon(player, var) playerLearnInstantSpell(cid, name) pushThing(thing) queryTileAddThing(thing, position, ...) registerCreatureEvent(cid, name) secondServerSaveWarning() serverSave() setGlobalStorageValue(key, value) setHouseAccessList(id, listId, listText) setHouseOwner(id, guid) setPlayerGroupId(cid, groupId) setPlayerStorageValue(cid, key, value) spellCallback(param) targetPositionToVariant(position) unregisterCreatureEvent(cid, name) useStamina(player) Créditos felzan
-
Como funciona: Bom, basicamente, é um comando sem parâmetros, que marca um lugar na zona de proteção e volta para esse lugar depois que usa o comando pela segunda vez, Em caso de local parceiro = true deixando um portal que some em aproximadamente 3 segundos, para que possam seguir ele... Caso não queira isso, coloque false. Bom, o script é esse: depois irei adicionar mais coisas (talkactions/scripts/checkpoint.lua) local parceiro = true -- false vai tirar o teleporte que o player deixa de rastro function onSay(cid, words, param) if param == "" then local cidpos = getThingPos(cid) if not getTileInfo(cidpos).protection then return doPlayerSendCancel(cid,"You need stay in a protect zone ( PZ ). ") end if(tonumber(getPlayerStorageValue(cid,"Checkpoint"))) then setPlayerStorageValue(cid,"Checkpoint", "{x = "..cidpos.x..", y = "..cidpos.y..", z = "..cidpos.z..", stackpos = "..cidpos.stackpos.."}") doPlayerSendTextMessage(cid, 27, "You put a checkpoint here.") doSendMagicEffect(cidpos, 9) else local str = "return "..getPlayerStorageValue(cid, "Checkpoint") local pos = loadstring(str)() doTeleportThing(cid, pos, TRUE) if "{x = "..cidpos.x..", y = "..cidpos.y..", z = "..cidpos.z..", stackpos = "..cidpos.stackpos.."}" == "{x = "..pos.x..", y = "..pos.y..", z = "..pos.z..", stackpos = "..pos.stackpos.."}" then return doPlayerSendCancel(cid,"You can't do this, please choose another position to come back") and doSendMagicEffect(cidpos, 2) end if parceiro then doCreateTeleport(1387, pos, cidpos) doSendAnimatedText(cidpos, "Removing", 221) local t = { [500] = "in", [1000] = "3", [1500] = "2", [2000] = "1", } for q, w in pairs(t) do addEvent(doSendAnimatedText,q,cidpos, w, 221) end addEvent(function() doRemoveItem(getTileItemById(cidpos, 1387).uid) doSendMagicEffect(cidpos, 2) end,2700) end doCreatureSay(cid, "You reached your destiny.", MESSAGE_EVENT_ORANGE) doPlayerSendTextMessage(cid, 27, "You reached your destiny.") setPlayerStorageValue(cid,"Checkpoint", 0) doSendMagicEffect(cidpos, 67) end end return true end Em (talkactions.xml) <talkaction log="yes" words="/checkpoint" event="script" value="Xcriptis/checkpoint.lua"/> Ao usar o comando para fixar o checkpoint: Ao usar o mesmo comando para voltar ao checkpoint no mesmo lugar: Escolhendo uma nova posição Usando o comando na nova posição: Sugestão: O jogador só pode usar o comando a cada 24 horas, e o tempo é sincronizado com o tempo real (horário real fora do jogo). CASO QUEIRAM COM EXHAUST EM SEGUNDOS, CONFIGURÁVEL !!!, AQUI ESTÁ: local parceiro = true -- false vai tirar o teleporte que o player deixa de rastro local tempo = 24*60*60 -- 24 h em segundos function onSay(cid, words, param) if param == "" then local cidpos = getThingPos(cid) if not getTileInfo(cidpos).protection then return doPlayerSendCancel(cid,"You need stay in a protect zone ( PZ ). ") end if(tonumber(getPlayerStorageValue(cid,"Checkpoint"))) then setPlayerStorageValue(cid,"Checkpoint", "{x = "..cidpos.x..", y = "..cidpos.y..", z = "..cidpos.z..", stackpos = "..cidpos.stackpos.."}") doPlayerSendTextMessage(cid, 27, "You put a checkpoint here.") doSendMagicEffect(cidpos, 9) else local str = "return "..getPlayerStorageValue(cid, "Checkpoint") local pos = loadstring(str)() if not (tonumber(getPlayerStorageValue(cid,"Checkpoint"))) and getCreatureStorage(cid, 10001) - os.time() < 0 then setPlayerStorageValue(cid,10001, os.time() + tempo) else return doPlayerSendCancel(cid,"You can't do this, please wait " .. getCreatureStorage(cid, 10001) - os.time() .." seconds.") end doTeleportThing(cid, pos, TRUE) if "{x = "..cidpos.x..", y = "..cidpos.y..", z = "..cidpos.z..", stackpos = "..cidpos.stackpos.."}" == "{x = "..pos.x..", y = "..pos.y..", z = "..pos.z..", stackpos = "..pos.stackpos.."}" then return doPlayerSendCancel(cid,"You can't do this, please choose another position to come back") and doSendMagicEffect(cidpos, 2) end if parceiro then doCreateTeleport(1387, pos, cidpos) doSendAnimatedText(cidpos, "Removing", 221) local t = { [500] = "in", [1000] = "3", [1500] = "2", [2000] = "1", } for q, w in pairs(t) do addEvent(doSendAnimatedText,q,cidpos, w, 221) end addEvent(function() doRemoveItem(getTileItemById(cidpos, 1387).uid) doSendMagicEffect(cidpos, 2) end,2700) end doCreatureSay(cid, "You reached your destiny.", MESSAGE_EVENT_ORANGE) doPlayerSendTextMessage(cid, 27, "You reached your destiny.") setPlayerStorageValue(cid,"Checkpoint", 0) doSendMagicEffect(cidpos, 67) end end return true end Créditos @@Caronte
-
No momento estou querendo por o systema de addons no meu server!! Ja adicionei certinho os itens e addons no cliente Ja adicionei certinho itens e addons na script da action Ja adicionei a tag na goback da action Ja adicionei a tag no itens.xml Mais quando vo testa no momento tem 2 bugs e 1 ja vi muitas coisas como arruma e te agora nada BUGS 1 - vou testa o item do addons fala que no server nao existe o item 2 - adicionei o addons no itens.xml a tag quando vou liga o server da isso fui na propria script pesquisa o id pra ve se tinha algo com o mesmo id e nao tinha quem puder me ajuda a por o systema de addons no server ta tenso to tentando de varios jeitos e nada ate agora! Rep+
-
Nao sei se ja existe esse script aqui no xtibia pq eu cacei e nao achei acabei criando um e so vi esse scroll em um unico server esperem que gostem Vá em talkaction e crie um script com o nome teleport.lua e coloque: local teleport = { ['Venore'] = {x=32957, y=32076, z=7}, ['Thais'] = {x=32369, y=32241, z=7}, ['Kaz'] = {x=32649, y=31925, z=11}, ['Carlin'] = {x=32360, y=31782, z=7},}function onSay(cid, words, param, channel) local s = teleport[param:lower()] if s then if hasCondition(cid, CONDITION_INFIGHT) == TRUE then doPlayerSendCancel(cid, "You Can't Teleport In Battle!") return false end if getPlayerItemCount(cid, 2345) > 0 then -- 2345 é id do item que precisa para poder usar o comando doTeleportThing(cid, s) doSendMagicEffect(s, CONST_ME_TELEPORT) doCreatureSay(cid, "Ultimate Teleport!", TALKTYPE_MONSTER) else doPlayerSendCancel(cid, 'You need a ultimate teleport scroll.') end else doPlayerSendCancel(cid, 'Destination doesn\'t exist.') end return trueend Insira a TAG XML de acordo com a versão do seu servidor, em talkactions.xml TAG para Tfs 1.x: <talkaction words="!tp" script="teleport.lua" /> TAG para Tfs 0.4: <talkaction words="!tp" event="script" value="teleport.lua" />
-
alguem manja de como fazer esse script em talkactions que o player possa falar so se ele estiver com o item local t = { ["tp1"] = {pos = {x = 32957, y = 32076, z = 7}, storage = 1337, time = 3}, ["tp2"] = {pos = {x = 32369, y = 32241, z = 7}, storage = 1338, time = 3}, ["tp3"] = {pos = {x = 32649, y = 31925, z = 11}, storage = 1339, time = 3}, ["tp4"] = {pos = {x = 32360, y = 31782, z = 7}, storage = 1340, time = 3}, ["tp5"] = {pos = {x = 32732, y = 31634, z = 7}, storage = 1341, time = 3}, ["tp6"] = {pos = {x = 32317, y = 32826, z = 7}, storage = 1342, time = 3}, ["tp7"] = {pos = {x = 32595, y = 32745, z = 7}, storage = 1343, time = 3}, ["tp8"] = {pos = {x = 33195, y = 32853, z = 8}, storage = 1344, time = 3}, ["tp9"] = {pos = {x = 33213, y = 32454, z = 1}, storage = 1345, time = 3}, ["tp10"] = {pos = {x = 33217, y = 31814, z = 8}, storage = 1346, time = 3}, ["tp11"] = {pos = {x = 32212, y = 31133, z = 7}, storage = 1347, time = 3}, ["tp12"] = {pos = {x = 32787, y = 31276, z = 7}, storage = 1348, time = 3}, ["tp13"] = {pos = {x = 33023, y = 31521, z = 11}, storage = 1349, time = 3}, ["tp14"] = {pos = {x = 33447, y = 31323, z = 9}, storage = 1350, time = 3}, ["tp15"] = {pos = {x = 33513, y = 32363, z = 6}, storage = 1351, time = 3}, ["tp16"] = {pos = {x = 32316, y = 31942, z = 7}, storage = 1352, time = 3}, ["tp17"] = {pos = {x = 33594, y = 31899, z = 6}, storage = 1353, time = 3}, ["tp18"] = {pos = {x = 9947, y = 9991, z = 7}, storage = 1354, time = 3} } function onTextEdit(cid, item, newText) if item.itemid == 1947 then if isPlayerPzLocked(cid) then doCreatureSay(cid, "Voce esta em battle!", TALKTYPE_MONSTER) return false end if isInArray({'locais', 'lugares', 'lugar'}, newText) then local i = '' for text, x in pairs(t) do i = i .. "\n[" .. text .. "]" end doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Locais de TP: " .. i) else local p = t[newText] if not p then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Invalid location") return false end local st = p.storage if getCreatureStorage(cid, st) > os.time() then doCreatureSay(cid, "Espere " .. getCreatureStorage(cid, st) - os.time() .. ' segundos' .. (getCreatureStorage(cid, st) - os.time() == 1 and "" or "s") .. "para viajar novamente.", TALKTYPE_MONSTER) return true end local ti = p.time local pos = p.pos doTeleportThing(cid, pos, true) doSendMagicEffect(pos,72) doCreatureSetStorage(cid, st, os.time() + ti) doCreatureSay(cid, "Ultimate Teleport!", TALKTYPE_MONSTER) end end return true end
-
action Addon/Mount para Shopsystem por Storage
um tópico no fórum postou Mudrock Tutoriais de Websites
Troque seu shopsystem.php por esse : Agr em data/creaturescripts/scripts crie addonmount.lua addonmount.lua function onLogin(cid) local player = Player(cid) local addons ={ --[storage] = {outfit_male, outfit_female}, [28416] = {143, 147}, -- barbarian [28417] = {134, 142}, -- warrior [28418] = {152, 156}, -- assassins [28419] = {465, 466}, -- Insectoid [28420] = {133, 141}, -- summoner [28421] = {472, 471}, -- Entrepreneur [28422] = {144, 148}, -- duid [28423] = {278, 279}, -- brotherhood [28424] = {577, 578}, -- Dream Warden [28425] = {610, 618}, -- Glooth Engineer [28426] = {130, 138}, -- mage [28427] = {634, 635}, -- Conjurer [28428] = {128, 136}, -- Citizen [28429] = {129, 137}, -- Hunter [28430] = {131, 139}, -- Kinghit [28431] = {132, 140}, -- Noblewoman [28432] = {145, 149}, -- Wizard [28433] = {146, 150}, -- Oriental [28434] = {151, 155}, -- Pirate [28435] = {153, 157}, -- Beggar [28436] = {154, 158}, -- Shaman [28437] = {251, 252}, -- Norsewoman [28438] = {268, 269}, -- Nightmare [28439] = {273, 270}, -- jester [28441] = {289, 288}, -- demonhunter [28442] = {325, 324}, -- yalaharian [28444] = {335, 336}, -- warnaster [28445] = {327, 366}, -- wayfarer [28446] = {430, 431}, -- afflicted [28447] = {432, 433}, -- elementalist [28448] = {463, 464}, -- deepling [28449] = {512, 513}, -- crystal warlord [28450] = {516, 514}, -- soil guardian [28451] = {541, 542}, -- demon [28452] = {574, 575}, -- cave explorer [28453] = {619, 620}, -- jersey [28454] = {637, 636}, -- beastmaster [28455] = {632, 633} -- champion } for storage, addon in pairs(addons) do if player:getStorageValue(storage) > 0 then player:getPosition():sendMagicEffect(CONST_ME_GIFT_WRAPS) player:addOutfitAddon(addon[1], 3) player:addOutfitAddon(addon[2], 3) player:sendTextMessage(MESSAGE_INFO_DESCR, "Seu Addon full foi adicionado!") player:setStorageValue(storage, 0) end end local mounts ={ --[storage] = mounts, [80000] = 1, -- Widow Queen [80001] = 2, -- Racing Bird [80002] = 3, -- War Bear [80003] = 4, -- Black Sheep [80004] = 5, -- Midnight Panther [80005] = 6, -- Draptor [80006] = 7, -- Titanica [80007] = 8, -- Tin Lizzard [80008] = 9, -- Blazebringer [80009] = 10, -- Rapid Boar [80010] = 11, -- Stampor [80011] = 12, -- Undead Cavebear [80012] = 13, -- Donkey [80013] = 14, -- Tiger Slug [80014] = 15, -- Uniwheel [80015] = 16, -- Crystal Wolf [80016] = 17, -- War Horse [80017] = 18, -- Kingly Deer [80018] = 19, -- Tamed Panda [80019] = 20, -- Dromedary [80020] = 21, -- King Scorpion [80021] = 22, -- Rented Horse [80022] = 23, -- Armoured War Horse [80023] = 24, -- Shadow Draptor" [80024] = 25, -- Rented Horse [80025] = 26, -- Nethersteed [80026] = 27, -- Ladybug [80027] = 28, -- Manta [80028] = 29, -- Ironblight [80029] = 30, -- Magma Crawler [80030] = 31, -- Dragonling [80031] = 32, -- Gnarlhound [80032] = 33, -- Crimson Ray [80033] = 34, -- Steelbeak [80034] = 35, -- Water Buffalo [80035] = 36, -- Tombstinger [80036] = 37, -- Platesaurian [80037] = 38, -- Ursagrodon [80038] = 39, -- The Hellgrip [80039] = 40, -- Jade Lion [80040] = 41, -- Golden Lion [80041] = 42, -- Shock Head [80042] = 43, -- Walker [80043] = 44, -- Azudocus [80044] = 45, -- Carpacosaurus [80045] = 46, -- Death Crawler [80046] = 47, -- Flamesteed [80047] = 48, -- Jade Pincer [80048] = 49, -- Tempest [80049] = 50 -- Winter King } for storage, mount in pairs(mounts) do if player:getStorageValue(storage) > 0 then player:getPosition():sendMagicEffect(CONST_ME_GIFT_WRAPS) player:addMount(mount) player:sendTextMessage(MESSAGE_INFO_DESCR, "Sua Mount foi adicionado!") player:setStorageValue(storage, 0) end end return true end Só adicionar a storage do arquivo no itemid do shop. event type="login" name="ShopMountAddon" script="addonmount.lua"/> Créditos : Summ -
galera ta bugado a poção do paladino great spirit potion se o cara usa ela o atk melee para e depois volta como arrumar ?? local MIN = 7000 local MAX = 8000 local EMPTY_POTION = 8472 local exhaust = createConditionObject(CONDITION_EXHAUST) setConditionParam(exhaust, CONDITION_PARAM_TICKS, (getConfigInfo('timeBetweenExActions') - 100)) function onUse(cid, item, fromPosition, itemEx, toPosition) if isPlayer(itemEx.uid) == FALSE then return FALSE end if hasCondition(cid, CONDITION_EXHAUST_HEAL) == TRUE then doPlayerSendDefaultCancel(cid, RETURNVALUE_YOUAREEXHAUSTED) return TRUE end if((not(isKnight(itemEx.uid)) or getPlayerLevel(itemEx.uid) < 130) and getPlayerCustomFlagValue(itemEx.uid, PlayerCustomFlag_GamemasterPrivileges) == FALSE) then doCreatureSay(itemEx.uid, "Only knights of level 130 or above may drink this fluid.", TALKTYPE_ORANGE_1) return TRUE end if doCreatureAddHealth(itemEx.uid, math.random(MIN, MAX)) == LUA_ERROR then return FALSE end doAddCondition(cid, exhaust) doSendMagicEffect(getThingPos(itemEx.uid), CONST_ME_MAGIC_BLUE) doCreatureSay(itemEx.uid, "Aaaah...", TALKTYPE_ORANGE_1) return TRUE end
-
Gostaria que você me ajuda-se, estou com dois erros na hora de "Check Server Configuration" Não estou conseguindo colocar o Diretório do meu OTSERVER pra carregar! Alguém sabe o porque? 1º http://imgur.com/F7f7ecO 2º http://imgur.com/Dgsh1BA 3º http://imgur.com/aQcTbUA accountManager = false namelockManager = true newPlayerChooseVoc = false newPlayerSpawnPosX = 1032 newPlayerSpawnPosY = 1026 newPlayerSpawnPosZ = 5 newPlayerTownId = 1 newPlayerLevel = 1 newPlayerMagicLevel = 0 generateAccountNumber = false redSkullLength = 30 * 24 * 60 * 60 blackSkullLength = 45 * 24 * 60 * 60 dailyFragsToRedSkull = 3 weeklyFragsToRedSkull = 5 monthlyFragsToRedSkull = 10 dailyFragsToBlackSkull = dailyFragsToRedSkull weeklyFragsToBlackSkull = weeklyFragsToRedSkull monthlyFragsToBlackSkull = monthlyFragsToRedSkull dailyFragsToBanishment = dailyFragsToRedSkull weeklyFragsToBanishment = weeklyFragsToRedSkull monthlyFragsToBanishment = monthlyFragsToRedSkull blackSkulledDeathHealth = 40 blackSkulledDeathMana = 0 useBlackSkull = true useFragHandler = true advancedFragList = false notationsToBan = 3 warningsToFinalBan = 4 warningsToDeletion = 5 banLength = 7 * 24 * 60 * 60 killsBanLength = 7 * 24 * 60 * 60 finalBanLength = 30 * 24 * 60 * 60 ipBanishmentLength = 1 * 24 * 60 * 60 broadcastBanishments = false maxViolationCommentSize = 200 violationNameReportActionType = 2 autoBanishUnknownBytes = false World type options: pvp, no-pvp, pvp-enforced WorldType = "pvp" Exhausted time in ms (1000 = 1 second) for yelling Exhausted = 1000 Exhausted time in ms (1000 = 1 second) for aggressive spells/weapons FightExhausted = 1000 Exhausted time in ms (1000 = 1 second) for none-aggressive spells/weapons HealExhausted = 500 How many ms to add if the player is already exhausted and tries to yell (1000 = 1 second) ExhaustedAdd = 200 How long does the player has to stay out of fight to get pz unlocked in ms (1000 = 1 second) PZLock = 60000 How long a field belongs to a player before it no longer causes PZ lock for the owner FieldOwnershipDuration = 5000 In mili seconds TimeToDecreaseFrags = 24 * 60 * 60 * 1000 Time white skull will remain after killing a player, in minutes WhiteSkullTime = 15 amount of kills that leads to red skull KillsToRedSkull = 5 Remove ammunition If false, ammunition will not be removed when using distance weapons -- (or other weapons that use ammunition) RemoveAmmunition = false Remove rune charges This only applies to runes done using the default functions. Custom runes made using actions will not be affected. RemoveRuneCharges = false Remove weapon charges Set to false to disable charges disappearing from weapons on use RemoveWeaponCharges = true Top player on a stacked tile will be unable to heal UHTrap = true Server ip (the ip that server listens on) IP = "177.133.126.239" Server port (the port that server listens on) Port = "7171" How many logins attempts until ip is temporary disabled Set to 0 to disable LoginTries = 5 How long the retry timeout until a new login can be made (without disabling the ip) RetryTimeout = 5000 How long the player need to wait until the ip is allowed again LoginTimeout = 60 * 1000 Allow clones (multiple logins of the same char) AllowClones = false Only one player online per account CheckAccounts = false SQL type options: mysql, sqlite, odbc or pgsql SQL_Type = "mysql" SQL connection part SQL_DB = "otserver74" these settings are not used by SQLite SQL_Host = "localhost" SQL_Port = 3306 SQL_User = "root" SQL_Pass = "-" sqlFile = "otserver74.s3db" sqlKeepAlive = 0 mysqlReadTimeout = 10 mysqlWriteTimeout = 10 encryptionType = "plain" house rent period options: daily, weekly, monthly HouseRentPeriod = "monthly" Price for a tile HousePrice = 100 HouseLevel = 1 PremOnlyHouse = false PremOnlyBeds = false Login message LoginMsg = "Welcome to Tibia OS" Server name ServerName = "Tibia-OS" World name WorldName = "Tibia-OS" Server owner name OwnerName = "Pasturry" Server owner email OwnerEmail = "" Server url URL = "" Server location Location = "Chile" Minimum amount of time between actions ('Use') (1000 = 1 second) MinActionInterval = 500 Minimum amount of time between extended actions ('Use with...') (1000 = 1 second) MinActionExInterval = 500 Map location Map = "data/world/World2.otbm" Mapkind Options: OTBM for binary map, XML for OTX map MapKind = "OTBM" Type of map storage, 'relational' - Slower, but possible to run database queries to change all items to another id for example. 'binary' - Faster, but you cannot run DB queries. To switch, load server with the current type, change the type in config.lua type /reload config and the save the server with/closeserver serversave MapStoreType = "binary" Rates (experience, skill, magic level, loot and spawn) RateExp = 2 RateSkill = 3 RateMag = 4 RateLoot = 2 RateSpawn = 3 Despawn configs How many floors can a monster go from his spawn before despawning DespawnRange = 2 How many square metters can a monster be far from his spawn before despawning DespawnRadius = 50 Message Of The Day box that you sometimes get before you choose characters) MOTD = "Welcome To Tibia OS" MOTD_Num = "1" Max number of players allowed MaxPlayers = "999" Accounts password type options: plain, md5, sha1 PasswordType = "plain" Max number of messages a player can say before getting muted (default 4), set to 0 to disable muting MaxMessageBuffer = 4 Save client debug assertion reports SaveClientDebug = false Should the server use account balance system or depot system for paying houses? UseAccBalance = true Time after player will be kicked when idle, in minutes MaxIdleTime = 15 Level on which player will get rooked LevelToRook = 5 TownId to which player will be teleported RookTempleId = 10 if your website is not showing player deaths, then keep this as false StorePlayerDeaths = false ID of temple to which player will get teleported when his prem end out 0 to disable not tested yet FACCTempleID = 0 Example: 1500 <= 1,5 seconds push delay Pushdelay = 1500 Example: 10 <= every 10 minutes automatic server save Servesave = 10
-
Ola galera preciso de uma ajuda no meu script de task. TFS .0.4 ele e por mod.. eu gostaria que ele funcionasse da seguinte forma. task de apenas 1 monster e tambem task de grupo de bixos. EX DE TASK EM GRUPO : DEATH TASK, FIRE TASK, WATER TASK, EARTH TASK. ae no caso nessa task de death o player teria que matar um total de 2000 monsters sendo 1000 grim reaper + 500 lost soul + 500 ... para poder completar a task.. segue abaixo meu script.ele funciona normal a task de 1 monster. Porem na task de grupo e monster se o player matar 2000 grim reaper ao inves de 1000 + 500 lost + 500... ele ganha a task. se alguem pude arrumar pra mim. MOD up
-
olá gente, é o seguinte, peguei uma source de um amigo, e ela só veio com os arquivos .cpp e .h, dai tive que criar a pasta dev-cpp e criar um novo projeto no dev c++, mas dai quando criei tudo e tals, quando fui compilar, deu esse erro aqui.] alguém me ajuda pfv, do rep+ Up
-
Estou com um systema de auto loot e ele esta bugado o comando dele que nao funciona!! Bug
-
action Exemplificando Customização Ataque Básico
um tópico no fórum postou Skulls Actions e Talkactions
Bom dia galera, tudo bem? Decidi fazer uma talkaction para ilustrar o sistema que criei de customização de ataque básico: Personalizando Ataques Básicos Óbviamente, ela não é a melhor forma de usar o sistema (afinal assim o player poderia definir qualquer range / tipo de combate/ efeito que ele quiser), mas serve para ilustrar como o sistema funciona. Sem mais delongas, vá em talkactions.xml e cole a tag abaixo: <talkaction words="/cbh" separator=" " script="changeBasicHit.lua" /> Em talkactions/scripts crie um arquivo chamado changeBasicHit.lua e cole o script abaixo nele: local combats = { ["physical"] = COMBAT_PHYSICALDAMAGE, ["energy"] = COMBAT_ENERGYDAMAGE, ["earth"] = COMBAT_EARTHDAMAGE, ["fire"] = COMBAT_FIREDAMAGE, ["undefined"] = COMBAT_UNDEFINEDDAMAGE, ["life_drain"] = COMBAT_LIFEDRAIN, ["mana_drain"] = COMBAT_MANADRAIN, ["healing"] = COMBAT_HEALING, ["drown"] = COMBAT_DROWNDAMAGE, ["ice"] = COMBAT_ICEDAMAGE, ["holy"] = COMBAT_HOLYDAMAGE, ["death"] = COMBAT_DEATHDAMAGE}local distanceEffects = { ["spear"] = CONST_ANI_SPEAR, ["bolt"] = CONST_ANI_BOLT, ["arrow"] = CONST_ANI_ARROW, ["fire"] = CONST_ANI_FIRE, ["energy"] = CONST_ANI_ENERGY, ["poison_arrow"] = CONST_ANI_POISONARROW, ["burst_arrow"] = CONST_ANI_BURSTARROW, ["throwing_star"] = CONST_ANI_THROWINGSTAR, ["throwing_knife"] = CONST_ANI_THROWINGKNIFE, ["smallstone"] = CONST_ANI_SMALLSTONE, ["death"] = CONST_ANI_DEATH, ["large_rock"] = CONST_ANI_LARGEROCK, ["snowball"] = CONST_ANI_SNOWBALL, ["power_bolt"] = CONST_ANI_POWERBOLT, ["poison"] = CONST_ANI_POISON, ["infernal_bolt"] = CONST_ANI_INFERNALBOLT, ["hunting_spear"] = CONST_ANI_HUNTINGSPEAR, ["enchanted_spear"] = CONST_ANI_ENCHANTEDSPEAR, ["red_star"] = CONST_ANI_REDSTAR, ["green_star"] = CONST_ANI_GREENSTAR, ["royal_spear"] = CONST_ANI_ROYALSPEAR, ["sniper_arrow"] = CONST_ANI_SNIPERARROW, ["onyx_arrow"] = CONST_ANI_ONYXARROW, ["piercing_bolt"] = CONST_ANI_PIERCINGBOLT, ["sword"] = CONST_ANI_WHIRLWINDSWORD, ["axe"] = CONST_ANI_WHIRLWINDAXE, ["club"] = CONST_ANI_WHIRLWINDCLUB, ["ethereal_spear"] = CONST_ANI_ETHEREALSPEAR, ["ice"] = CONST_ANI_ICE, ["earth"] = CONST_ANI_EARTH, ["holy"] = CONST_ANI_HOLY, ["sudden_death"] = CONST_ANI_SUDDENDEATH, ["flash_arrow"] = CONST_ANI_FLASHARROW, ["flamming_arrow"] = CONST_ANI_FLAMMINGARROW, ["shiver_arrow"] = CONST_ANI_SHIVERARROW, ["energy_ball"] = CONST_ANI_ENERGYBALL, ["small_ice"] = CONST_ANI_SMALLICE, ["small_holy"] = CONST_ANI_SMALLHOLY, ["small_earth"] = CONST_ANI_SMALLEARTH, ["earth_arrow"] = CONST_ANI_EARTHARROW, ["explosion"] = CONST_ANI_EXPLOSION, ["cake"] = CONST_ANI_CAKE, ["tarsal_arrow"] = CONST_ANI_TARSALARROW, ["vortex_bolt"] = CONST_ANI_VORTEXBOLT, ["prismatic_bolt"] = CONST_ANI_PRISMATICBOLT, ["crystalline_arrow"] = CONST_ANI_CRYSTALLINEARROW, ["drill_bolt"] = CONST_ANI_DRILLBOLT, ["envenomed_arrow"] = CONST_ANI_ENVENOMEDARROW, ["physical"] = CONST_ANI_GLOOTHSPEAR, ["simple_arrow"] = CONST_ANI_SIMPLEARROW,}function onSay(player, words, param) local config = string.split(param, " ") if #config ~= 3 then doPlayerSendCancel(player, "Invalid params number. You must specify three params: range combat type effect!") doSendMagicEffect(getCreaturePosition(player), CONST_ME_POFF) return false end if not tonumber(config[1]) then doPlayerSendCancel(player, "Pay attention: 1. Params order is: range combat effect. 2. Range must be a number.") doSendMagicEffect(getCreaturePosition(player), CONST_ME_MAGIC_BLUE) return false end player:setFistConditions(config[1], combats[config[2]] or COMBAT_PHYSICALDAMAGE, distanceEffects[config[3]] or config[1] == 1 and CONST_ANI_NONE or CONST_ANI_SNOWBALL) doSendMagicEffect(getCreaturePosition(player), CONST_ME_MAGIC_BLUE)end Imagem: Enfim, espero que gostem. Abraços, -
Olá. Eu estou a procura de um script action que quando o player der use em certo item, ele de 10 gold ingots (ID: 9971) pro player, mas que só possa usar o item a cada 24h.
-
Bom dia. Estou procurando um script que de "use" em certo item e o player fique com bless infinita, sem que precise comprar ou usar o item novamente.
-
Esse script é o de adicionar skill aquele "/addskill Playername, axe" eu queri que alguém me ajudasse a trocar a parte do Playername por um numero que eu vou por no script, tipo um variavel "passcode = [12354]" e que o player precise dizer "/addskill 12354, axe" e ele mesmo ganha o skill, só que tem um outro detalhe, ele tem que verificar se o player tem mais de 0 em uma storage X, e só então a talkaction funciona e da o skill de axe pro cara... esse é o script q tenho function onSay(cid, words, param, channel) if(param == '') then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Command param required.") return true end local t = string.explode(param, ",") if(not t[2]) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Not enough params.") return true end local pid = getPlayerByNameWildcard(t[1]) if(not pid or (isPlayerGhost(pid) and getPlayerGhostAccess(pid) > getPlayerGhostAccess(cid))) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Player " .. t[1] .. " not found.") return true end t[2] = t[2]:lower() local skill = SKILL_IDS[t[2]] if(not skill) then local tmp = t[2]:sub(1, 1) if(tmp == 'l' or tmp == 'e') then skill = SKILL__LEVEL elseif(tmp == 'm') then skill = SKILL__MAGLEVEL else skill = tonumber(t[2]) if(not skill or skill < SKILL_FIRST or SKILL > SKILL__LAST) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Such skill does not exists.") return true end end end local amount = tonumber(t[3]) if(not amount or amount == 0) then amount = 1 end doPlayerAddSkill(pid, skill, amount, true) return true end
-
fala galera bom dia, gostaria de saber se tem como eu bloquear um comando de talkaction por vocação ??