-
Total de itens
411 -
Registro em
-
Última visita
-
Dias Ganhos
10
Tudo que RigBy postou
-
Items, faça com que ele não possa ser movido pq caso seja criado é movam de lugar vai da erro no distro na hora de remove ele. é um globalevent local item = 2467 -- item que sera criado local tempo = 5 -- quanto tempo o item vai fica até desaparecer local positions = { -- posições que sera criado {x = 1017, y = 1030, z = 7}, {x = 1018, y = 1030, z = 7}, {x = 1019, y = 1030, z = 7}, } function onThink(interval) local pos = positions[math.random(1, #positions)] doCreateItem(item, 1, pos) addEvent(function() doRemoveItem(getItemStack(pos, item).uid, 1) end, tempo*100000) return true end function getItemStack(pos, iid) for i = 1, 255 do posa = getThingFromPos({x=pos.x, y=pos.y, z=pos.z, stackpos=i}) if posa.itemid == iid then return posa end end return nil end .xml, tag. <globalevent name="Teleports" interval="300000" script="nomedoscript.lua" />
-
TFS 1.2, agora nem passo do step 1, acho que tem alguma coisa a ver com o phpmyadmin ja que ele ta entrando direto sem senha. http://prntscr.com/7nkfzc
-
Adicionei mas o erro ainda continua aqui meu config.lua
-
So basta fazer um movement .lua local storage = 2313123 -- storage do bau function onStepIn(cid, item, position, fromPosition) if getPlayerStorageValue(cid, storage) == -1 then doTeleportThing(cid, fromPosition, false) end return true end .xml, tag <movevent type="StepIn" actionid="8752" event="script" value="nomedoscript.lua"/> so basta você adicionar o actionid (8752) no piso que só possa passar quem fez a quest.
-
local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_HEALING) setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_MAGIC_BLUE) local porcetagem = 25 -- 25% function onCastSpell(cid, var) health = (getCreatureMaxHealth(cid) / 100) * porcetagem health = math.ceil(health) doCombat(cid, combat, var) doCreatureAddHealth(cid, health) return true end
-
Pronto agora ta totalmente funcional, não vai ter nenhum bug assim. onThink, em exaust você coloca o tempo entre cada heal function doDoT(cid) local exaust = 2 -- tempo entre cada heal local a = { {levelMin = 0, levelMax = 10, heal = 1}, {levelMin = 11, levelMax = 20, heal = 4}, {levelMin = 21, levelMax = math.huge, heal = 20}, } if not isCreature(cid) then return false end if getCreatureHealth(cid) < getCreatureMaxHealth(cid) then for _, b in pairs(a) do if getPlayerLevel(cid) >= b.levelMin and getPlayerLevel(cid) <= b.levelMax then if getPlayerStorageValue(cid, 83742397438247932) < os.time() then doCreatureAddHealth(cid, b.heal) addEvent(doDoT, exaust*1000, cid) setPlayerStorageValue(cid, 83742397438247932, os.time() + exaust - 1) end end end end return true end function onThink(cid, interval) doDoT(cid) return true end
-
Alguém pode min ajuda a abrir um site com a TFS 1.2 so para criar a conta mesmo e por online apenas para min. Eu tentei abrir so que deu esse erro: http://prntscr.com/7ncqlg e meu phpmyadmin, ela ta entrando direto sem precisa de senha. Alguém ai tem um tutorial de como abrir um site usando o ampps ps. to usando o gesior2012 paraTFS 1.0 nunca criei um site.
-
Eu testei aqui e ta funcionando certo, você deve ta com os items errado 10, 10601 e 2, 5905. 20:57 Rigby [56]: hi 20:57 Deruno: Ta Afim de ganha uma vocação? 20:57 Rigby [56]: yes 20:57 Deruno: Qual você quer? 20:57 Deruno: Dark wizard 20:57 Deruno: Blood Mage 20:57 Deruno: Master sorcerer 20:57 Rigby [56]: blood mage 20:57 Deruno: Parabêns você acaba de se tornar Blood Mage
-
Não sei se é apenas comigo mas aqui não ta mais chegando a notificação de quando alguém curti meu post, desde que adiciono as frases.
-
Acho que seria melhor fazer um globalevent mas ta ai do jeito que você quer. function doDoT(cid) local a = { {levelMin = 0, levelMax = 10, heal = 1}, {levelMin = 11, levelMax = 20, heal = 4}, {levelMin = 21, levelMax = math.huge, heal = 20}, } if not isCreature(cid) then return false end if getCreatureHealth(cid) < getCreatureMaxHealth(cid) then for _, b in pairs(a) do if getPlayerLevel(cid) >= b.levelMin and getPlayerLevel(cid) <= b.levelMax then doCreatureAddHealth(cid, b.heal) addEvent(doDoT, 2000, cid) end end end return true end function onLogin(cid) local condition_infight = createConditionObject(CONDITION_INFIGHT) setConditionParam(condition_infight, CONDITION_PARAM_TICKS, 3 * 1000) doAddCondition(cid, condition_infight) doDoT(cid) return true end
-
Reformulei o script do npc -- Do not remove the credits -- -- Developed by Rigby -- -- Xtibia.com -- local keywordHandler = KeywordHandler:new() local npcHandler = NpcHandler:new(keywordHandler) NpcSystem.parseParameters(npcHandler) local talkState = {} 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 local needVocation = 1 local config = { ["Master sorcerer"] = {items = {2033, 1}, items2 = {5882, 5}, gainVocation = 5, storage = 221321321}, ["Dark wizard"] = {items = {4852, 1}, items2 = {2144, 15}, gainVocation = 11, storage = 221321322}, ["Blood Mage"] = {items = {10601, 10}, items2 = {5905, 2}, gainVocation = 12, storage = 221321323}, } function creatureSayCallback(cid, type, msg) if(not npcHandler:isFocused(cid)) then return false end local talkUser = NPCHANDLER_CONVBEHAVIOR == CONVERSATION_DEFAULT and 0 or cid if msgcontains(msg, 'yes') then if getPlayerVocation(cid) == needVocation then selfSay('Qual você quer?', cid) for k, v in pairs(config) do selfSay('{'..k..'}', cid) talkState[talkUser] = 1 end else selfSay('Sua vocação não e digna destas promotions, ou voce ja recebeu sua promotion.', cid) end end for i, q in pairs(config) do if talkState[talkUser] == 1 and msgcontains(msg, ''..i..'') then if getPlayerItemCount(cid, q.items[1]) >= q.items[2] and getPlayerItemCount(cid, q.items2[1]) >= q.items[2] then selfSay('Parabêns você acaba de se tornar '..i..'', cid) doPlayerSetVocation(cid, q.gainVocation) doPlayerRemoveItem(cid, q.items[1], q.items[2]) doPlayerRemoveItem(cid, q.items2[1], q.items2[2]) setPlayerStorageValue(cid, q.storage, 1) talkState[talkUser] = 2 else selfSay('Você ter '..q.items[2]..' '..getItemNameById(q.items[1])..' e '..q.items2[2]..' '..getItemNameById(q.items2[1])..'.', cid) end end end end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new()) e para que ele não perca a vocation local config = { --[storage] = vocation, [221321321] = 5, [221321322] = 11, [221321323] = 12, } function onLogin(cid) for i, q in pairs(config) do if getPlayerStorageValue(cid, i) == 1 then doPlayerSetVocation(cid, q) end end return true end
-
para de funciona e so volta quando loga de novo? mudei para onThink(cid, interval), não se esqueça de registra o evento. function doDoT(cid) local a = { {levelMin = 0, levelMax = 10, heal = 1}, {levelMin = 11, levelMax = 20, heal = 4}, {levelMin = 21, levelMax = math.huge, heal = 20}, } if not isCreature(cid) then return false end if getCreatureHealth(cid) < getCreatureMaxHealth(cid) then for _, b in pairs(a) do if getPlayerLevel(cid) >= b.levelMin and getPlayerLevel(cid) <= b.levelMax then doCreatureAddHealth(cid, b.heal) addEvent(doDoT, 2000, cid) end end end return true end function onThink(cid, interval) doDoT(cid) return true end
-
Da para fazer assim, mas vai da muito mais maitoooooooooo trabalho, porque você terá que adicionar um por um, porque caso eu use >= os heal vai começar a se junta tipo 25...75...225...655. Recomendo você usar esse dai de cima.
-
Ai, não repita os levels, coloque sempre 1 a mais, math.huge que dizer infinito. function doDoT(cid) local a = { {levelMin = 0, levelMax = 10, heal = 1}, {levelMin = 11, levelMax = 20, heal = 4}, {levelMin = 21, levelMax = math.huge, heal = 20}, } if not isCreature(cid) then return false end if getCreatureHealth(cid) < getCreatureMaxHealth(cid) then for _, b in pairs(a) do if getPlayerLevel(cid) >= b.levelMin and getPlayerLevel(cid) <= b.levelMax then doCreatureAddHealth(cid, b.heal) addEvent(doDoT, 2000, cid) end end end return true end function onLogin(cid) doDoT(cid) return true end
-
Eu também penso como o darkhell, mas pode ser que de certo. Fiz um onLogin function doDoT(cid) if not isCreature(cid) then -- Se o player tiver deslogado return false end doCreatureAddHealth(cid, 25) -- quanto vai healar addEvent(doDoT, 5000, cid) -- em quantos segundos vai healar, no caso 5000 = 5 segundos return true end function onLogin(cid) doDoT(cid) return true end
-
Eu vou arruma esse script ai, jaja eu posto ele mas arrumado e completo. To baixando um ot para testa.
-
Mudei para ativa em 5 em 5 segundos quando tiver em combate, so basta criar uma magia de se healar pera erei uma parada #pronto ai local magia = "blood rage" -- magia que ele ira solta, tem que ser o nome da magia e não a palavra magica local storage = 5834843857 -- storage que vai ser usada, o valor é 1 para ser ativado local hps = 5 -- 5 em 5 vai acontecer function onCombat(cid, target) if isPlayer(cid) then if getPlayerStorageValue(cid, storage) == 1 then if getPlayerStorageValue(cid, 5345435432534543) < os.time() then doCreatureCastSpell(cid, magia) setPlayerStorageValue(cid, 5345435432534543, os.time() + hps) end end end return true end function onStatsChange(cid, attacker, type, combat, value) if isPlayer(cid) then if getPlayerStorageValue(cid, storage) == 1 then if getPlayerStorageValue(cid, 5345435432534543) < os.time() then doCreatureCastSpell(cid, magia) setPlayerStorageValue(cid, 5345435432534543, os.time() + hps) end end end return true end
-
Ele so fica se regenerando quando ta em combate que nem aquele outro script ou assim que logar começa a se regenera. precisa ter feito alguma coisa para começar a regenera.
-
Uma vez Oneshot falo num tópico que isso é um bug no sistema e infelizmente eu não lembro como resolve isso mas eu sei um jeito de resolver em .lua Isso pode resolve para que a vocação não mude, so basta adiciona para que o npc de uma certa storage, e quando ele loga ele ganha a vocação de novo. function onLogin(cid) if getPlayerStorageValue(cid, 645332) == 1 then doPlayerSetVocation(cid, 6) end return true end Eu to indo tomar banho, jaja eu refaço esse npc ai que eu tinha feito hehehe, adicionar um tabela nele.
-
desabilita essas funções no config.lua allowChangeOutfit = true allowChangeColors = true allowChangeAddons = true
-
Em plena terça... assustando encantado o povo.
-
Seria uma boa amostrar a quantidade de melhores respostas que uma pessoa tem no perfil que nem a reputação e não apenas no top 5 (se isso já existir eu não sei onde fica). E também volta com aqueles nomezinho que tinha antigamente na reputação, tipo ao atingir 1000 rep ficaria la em baixo da reputação "Sou o Deus do XTibia".
-
Seria uma magia normal, só que em cada level summonaria um Mob diferente. Digamos que eu coloque essa magia no lugar de exura, se eu usa-se exura no level 25 summonaria um rat, se eu usa-se exura no level 100 summonaria um demon. Para adicionar, acredito eu que so basta substitui essa função: void Creature::addDamagePoints(Creature* attacker, int32_t damagePoints) por essa dai que eu ta no tópico.(acredito eu) Acabei de formatar o pc, to sem os programas aqui, ai não da para eu testa
-
Quem Está Navegando 0 membros estão online
- Nenhum usuário registrado visualizando esta página.