Ir para conteúdo

luanluciano93

Héroi
  • Registro em

  • Última visita

Tudo que luanluciano93 postou

  1. function onSay(cid) local player = Player(cid) local totalBlessPrice = getBlessingsCost(player:getLevel()) * 5 * 0.5 if player:getBlessings() == 5 then player:sendCancelMessage("You already have been blessed!", cid) elseif player:removeMoneyNpc(totalBlessPrice) then player:sendTextMessage(MESSAGE_EVENT_ADVANCE, "You have been blessed by all of eight gods!") for b = 1, 8 do if not player:hasBlessing(b) then player:addBlessing(b, 1) end end player:setStorageValue(999563, 1) player:getPosition():sendMagicEffect(CONST_ME_HOLYAREA) else player:sendCancelMessage("You don't have enough money. You need " .. totalBlessPrice .. " to buy bless.", cid) end return false end
  2. algum script de advance, que é quando ele upa.
  3. @GuiKatSevero qual versão de TFS ou OTX?
  4. setPlayerStorageValue(cid,18441,1) muda o cid para tid
  5. você tem que colocar a storage dentro desse laço de repetição: for i, tid in ipairs(check) do doSendMagicEffect(t.entrada[i], CONST_ME_POFF) doTeleportThing(tid, t.saida[i], false) addEvent(VarAnihiPlayer, t.Time*60*1000, tid) doSendMagicEffect(t.saida[i], CONST_ME_ENERGYAREA) end
  6. @underewarr estranho, pode ser ...
  7. Sim, ou coloca no onLogin caso algum player logue com a storage com valor 1 ele é teleportado pro templo. tbem colocar noLogout no local.
  8. local foods = { [29043] = {1, 'Crunch.'}, -- NEW FOOD } function onUse(player, item, fromPosition, target, toPosition, isHotkey) local food = foods[item.itemid] if not food then return false end local conditionFood = Condition(CONDITION_ATTRIBUTES) conditionFood:setParameter(CONDITION_PARAM_TICKS, 30 * 60 * 30000) conditionFood:setParameter(CONDITION_PARAM_SKILL_CLUB, 30) conditionFood:setParameter(CONDITION_PARAM_SKILL_SWORD, 30) conditionFood:setParameter(CONDITION_PARAM_SKILL_AXE, 30) conditionFood:setParameter(CONDITION_PARAM_STAT_MAGICPOINTS, 30) conditionFood:setParameter(CONDITION_PARAM_BUFF_SPELL, true) local condition = player:getCondition(CONDITION_REGENERATION, CONDITIONID_DEFAULT) if condition and math.floor(condition:getTicks() / 30000 + (food[1] * 12)) >= 1200 then player:sendTextMessage(MESSAGE_STATUS_SMALL, 'You are full.') return true end player:feed(food[1] * 12) player:say(food[2], TALKTYPE_MONSTER_SAY) player:addCondition(conditionFood) player:getPosition():sendMagicEffect(CONST_ME_MAGIC_RED) item:remove(1) local client = player:getClient() if client.version > 1140 then player:updateSupplyTracker(item) end return true end
  9. @douk e @xmrvccjd123 infelizmente essa versão é baseada no TFS 1.3 e não comporta a criação de conta por account manager e nem usando o sistema sqlite. Eu estou refazendo um website para o pessoal que usa o styller mas ainda vai demorar um pouco. O que eu posso recomendar a vocês é usar um website de TFS 1.0 + e não procurar por esses de versão 8.60 porque eles são "formulados" para versões inferiores. Se baixarem um website para versão TFS 1.0+ as tabelas serão as mesmas das usadas neste servidor.
  10. Isso que eu disse é para não teleportar no tempo estipulado quem já saiu pelo teleport do fim da quest.
  11. local foods = { [29043] = {1, 'Crunch.'}, -- NEW FOOD } function onUse(player, item, fromPosition, target, toPosition, isHotkey) local food = foods[item.itemid] if not food then return false end --player:removeCondition(CONDITION_REGENERATION, CONDITIONID_DEFAULT) local conditionFood = Condition(CONDITION_ATTRIBUTES) conditionFood:setParameter(CONDITION_PARAM_TICKS, 30 * 60 * 30000) conditionFood:setParameter(CONDITION_PARAM_SKILL_MELEE, 30) conditionFood:setParameter(CONDITION_PARAM_STAT_MAGICPOINTS, 30) local condition = player:getCondition(CONDITION_REGENERATION, CONDITIONID_DEFAULT) if condition and math.floor(condition:getTicks() / 30000 + (food[1] * 12)) >= 1200 then player:sendTextMessage(MESSAGE_STATUS_SMALL, 'You are full.') return true end player:feed(food[1] * 12) player:say(food[2], TALKTYPE_MONSTER_SAY) player:addCondition(conditionFood) player:getPosition():sendMagicEffect(CONST_ME_MAGIC_RED) item:remove(1) local client = player:getClient() if client.version > 1140 then player:updateSupplyTracker(item) end return true end
  12. @underewarr o tempo para as 3 são os mesmo?
  13. @underewarr você quer adicionar esta mesmas condições usando o mesmo item?
  14. function onLogin(cid) local pos = {x = 32369, y = 32241, z = 7} if isPremium(cid) then setPlayerStorageValue(cid, 59898989, 1) elseif getPlayerStorageValue(cid, 59898989) == 1 and not isPremium(cid) and getPlayerVocation(cid) > 0 then local outfit = getPlayerSex(cid) == 0 and 136 or 128 doCreatureChangeOutfit(cid, {lookType = outfit}) doTeleportThing(cid, pos) doPlayerSendTextMessage(cid, MESSAGE_STATUS_DEFAULT, "Your premium account is over") doSendMagicEffect(getCreaturePosition(cid), CONST_ME_TELEPORT) setPlayerStorageValue(cid, 59898989, 0) end return true end
  15. Coloque uma storage no teleport de saida setando ela como 0. Antes dessa linha: doSendMagicEffect(t.saida[i], CONST_ME_ENERGYAREA) Coloca setando esta storage como 1. E na verificação coloca uma condição de teleportar apenas quem tem a storage com valor 1. function VarAnihiPlayer(cid) if not isCreature(cid) then return LUA_ERROR end if #getPlayersInArea(config.from, config.to) then doTeleportThing(cid, getTownTemplePosition(getPlayerTown(cid))) end end
  16. function checarPonte() local TILES = { {1543, {x = 186, y = 54, z = 7, stackpos = 1}}, -- ID do GROUND, POSIÇÃO DO GROUND {1543, {x = 186, y = 55, z = 7, stackpos = 1}}, -- SE QUISER COLOCAR MAIS É SÓ COPIAR A LINHA DE CIMA } for i = 1, #TILES do if getTileItemById(TILES[i][2], TILES[i][1]).uid == 0 then doCreateItem(TILES[i][1], 1, TILES[i][2]) else doRemoveItem(getThingfromPos(TILES[i][2]).uid, 1) end end end
  17. E quando essa verificação seria feita?
  18. Update 05/10/2019 • Adicionado sistema de Achievements (7 por enquanto). • Adicionado task system com boss room. • Removido arquivo compat.lua (não quero gambiarras). • Adicionado castelo na premium city e Queen Catarine. • Substituido o NPC Dufi por EREMO. • Adicionado templo de Tiquanda. • Fixado várias coisas no mapa.
  19. local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_HEALING) setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_MAGIC_BLUE) setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, false) setCombatParam(combat, COMBAT_PARAM_DISPEL, CONDITION_PARALYZE) setHealingFormula(combat, COMBAT_FORMULA_LEVELMAGIC, 5, 5, 11, 15) function onCastSpell(cid, var) if isPlayer(cid) == TRUE then if exhaustion.check(cid, 30030) then return FALSE else return doRemoveCondition(cid, CONDITION_PARALYZE), doCombat(cid, combat, var) end else return doRemoveCondition(cid, CONDITION_PARALYZE), doCombat(cid, combat, var) end end
  20. Há um tempo o projeto TFS teve um reformulação total, ficou totalmente otimizada, que foi a mudança para a versão 1.0. Depois disso as novas atualizações são 1.1, 1.2, e atualmente encontra-se na 1.3. O projeto OTX que estava na versão OTX2, tbem atualizou seu projeto totalmente baseado na TFS 1.3, e criou a OTX3. É basicamente isso.
  21. @MatCollier ótimo! Que bom que deu certo!
  22. @MatCollier a versão é exatamente a 11?
  23. local config = { redTeam = 1, blueTeam = 2, gametime = 2000, redTeamStorage = 2001, blueTeamStorage = 2002, outfitRed = {lookType = 128, lookHead = 94, lookAddons = 2, lookLegs = 94, lookBody = 94, lookFeet = 94}, outfitBlue = {lookType = 128, lookHead = 88, lookAddons = 2, lookLegs = 88, lookBody = 88, lookFeet = 88}, war = { fromPos = {x=638, y=711, z=7, stackpos=253}, toPos = {x=751, y=780, z=7, stackpos=253}, rewardRoom = {x=636,y=662,z=7,stackpos=1}, removePlayer = {x=518, y=840, z=7, stackpos=253} } } local function TpWinners(cid) for _, pid in ipairs(getPlayersOnline()) do if isInArea(getPlayerPosition(pid), config.war.fromPos, config.war.toPos) then doTeleportThing(pid, config.war.rewardRoom, false) end end end local function winKill(cid, team) addEvent(TpWinners, 5000, cid) setGlobalStorageValue(config.redTeamStorage, 0) setGlobalStorageValue(config.blueTeamStorage, 0) if team == 1 then doBroadcastMessage("Red Team has won the event!") elseif team == 2 then doBroadcastMessage("Blue Team has won the event!") end end local function arenaDeath(cid, team) doTeleportThing(cid, config.war.removePlayer) doPlayerSendTextMessage(cid,MESSAGE_EVENT_ADVANCE,'You have died, you are eliminated from the event') setPlayerStorageValue(cid, 1001, 0) setPlayerStorageValue(cid, 1002, 1) doRemoveCondition(cid,CONDITION_INFIGHT) doRemoveCondition(cid, CONDITION_OUTFIT) if team == 1 then setGlobalStorageValue(config.redTeamStorage, getGlobalStorageValue(2001) - 1) elseif team == 2 then setGlobalStorageValue(config.blueTeamStorage, getGlobalStorageValue(2002) - 1) end if getGlobalStorageValue(2001) == 1 then -- redStorage winKill(cid, 2) elseif getGlobalStorageValue(2002) == 1 then -- blueStorage winKill(cid, 1) end end function onPrepareDeath(cid, lastHitKiller, mostDamageKiller) if isPlayer(cid) == true and getPlayerStorageValue(cid, 1001) > 0 then arenaDeath(cid, team) return false end return true end
  24. local config = { positionStone = Position(947, 1102, 9), stoneId = 1355, } function onUse(player, item, fromPosition, target, toPosition, isHotkey) if player:getGuildLevel() ~= 3 then player:sendTextMessage(MESSAGE_EVENT_ADVANCE, "[Castle] Somente o Leader! ") return true end local position = config.positionStone if not position then return true end local tile = position:getTile() if tile then local stone = tile:getItemById(config.stoneId) if stone then stone:remove() else Game.createItem(config.stoneId, 1, position) end end item:transform(item.itemid == 1945 and 1946 or 1945) return true end

Informação Importante

Confirmação de Termo