Tudo que Nogard postou
- PODE me AJUDAR?
-
Média Online
Muito bom :v Rep+
-
TibiaKing, o esquecido.
:/ Façamos nossa parte, quanto mais conteúdo, creio que maior será o movimento.
- Top 25 Reputação
- Top 25 Reputação
-
Pedido tile que verifica storage!
Vá em Data/Movements/Scripts, crie um novo arquivo lua chamado storagecheck, e coloque isso: function onStepIn (cid, position, fromPosition) local config = { storage = 00000, --- Storage que será verificada action = 0000 ---Action ID do Tile } if item.actionid == config.action then ---- if getPlayerStorageValue(cid, config.storage) == 0 then doTeleportThing(cid, getTownTemplePosition(getPlayerTown(cid))) end end return true end Configure a Storage que será verificada, e o Action ID que você colocará no Tile. Após feito isso, salve, e feche. Vá em Data/Movements, abra o arquivo movements.xml, e adicione essa tag: <movevent type="StepIn" itemid="0000" event="script" value="storagecheck.lua"/> Coloque o Item ID do piso em que o player irá pisar.
-
Formação de Equipe - BIOHAZARD ONLINE
Perfect Breno, sem mais.
- Servidor Online!
-
Ajuda :\
uma door? poderia me mandar o script?
-
Ajuda :\
Instantaneamente? Bom, eu colocaria uma verificação da storage, quando o player logasse, caso não tivesse a storage, seria teleportado, e setado uma nova.
-
[EDITAR] Script - Addon Bonus
Achei que você soubesse o processo necessário.. Perdão. rs. Bom, abra seu arquivo creaturescripts.xml, e adicione essa tag: <event type="login" name="BonusOutfit" event="script" value="nomedosearquivo.lua"/> colocando o respectivo nome que deu ao arquivo lua. Em seguida, vá em data/creaturescripts/scripts, e abre o arquivo login.lua. Procure por RegisterCreatureEvent, e adicione essa linha, abaixo das demais: registerCreatureEvent(cid, "BonusOutfit") Apenas lembrando, o script dará o bonus caso o jogador esteja usando a outfit respectiva a vocation. (Isso é, caso funcione).
-
[PEDIDO] Quando Player Matar Outro
function onKill(cid, target, lastHit) if isPlayer(cid) and isPlayer(target) then doBroadcastMessage('O jogador '.. getPlayerName(target) ..' ['.. getPlayerLevel(target) ..'] Acaba de ser morto pelo jogador ' .. getPlayerName(cid) ..' [' .. getPlayerLevel(cid) .. '].', MESSAGE_EVENT_DEFAULT) else return false end return true end
-
[EDITAR] Script - Addon Bonus
Tem, tem como. Pra configurar as vocações e outfits, mude essa parte: local outfits = { hunter = 2, mage = 3, --- ID das Outfits. knight = 4 } local vocations = { hunters = 2, mage = 3, --- ID das Vocations. knight = 4 } Pra editar a quantia de Mana e Life que será adicionado, mude essa parte: local bonus = { hunterhp = 200 --- HP e Mana de bônus da primeira vocação da tabela, no caso Hunters. huntermana = 100 magehp = 100 --- HP e Mana de bônus da segunda vocação da tabela, no caso Mages. magemana = 300 knighthp = 300 --- HP e Mana de bônus da primeira vocação da tabela, no caso Knights. knightmana = 100 }
-
[EDITAR] Script - Addon Bonus
Em questão de aumentar Mana + Health, caso o Player esteja de x outfit, e sendo da respectiva x vocation, eu usaria um creaturescript. function onLogin (cid) local outfits = { hunter = 2, mage = 3, knight = 4 } local vocations = { hunters = 2, mage = 3, knight = 4 } if getCreatureOutfitId(cid) == outfits.hunter and getPlayerVocation(cid) == vocations.hunters then setCreatureMaxHealth(cid, getCreatureMaxHealth(cid)+200) setCreatureMaxMana(cid, getCreatureMaxMana(cid)+300) elseif getCreatureOutfitId(cid) == outfits.mage and getPlayerVocation(cid) == vocations.mage then setCreatureMaxHealth(cid, getCreatureMaxHealth(cid)+100) setCreatureMaxMana(cid, getCreatureMaxMana(cid)+400) elseif getCreatureOutfitId(cid) == outfits.knight and getPlayerVocation(cid) == vocations.knight then setCreatureMaxHealth(cid, getCreatureMaxHealth(cid)+100) setCreatureMaxMana(cid, getCreatureMaxMana(cid)+100) end return true end
-
Duvida
Realmente o fórum já não tem tantos membros interessados em trazer conteúdo no momento. Porém há muito material de aprendizagem já criados Rodrigo, basta dar uma procurada. Mesmo os membros atuais, que se interessam em ajudar, não irão lhe responder tudo, procuramos não dar nada de 'mão beijada', apenas lhe damos um rumo, para que você possa resolver sua questão. Muitas das vezes, entregar algo na mão, ou material já feito, faz com que o membro não aprenda nada, muito menos se interesse em aprender. Realmente há ausência de alguns membros antigos, mas façamos nossa parte. Abraços.
- [EDITAR] Script - Addon Bonus
-
(Resolvido)[PEDIDO]
Primeiro, vá em data/creaturescripts/scripts, crie um novo arquivo .lua chamado killzabolick, e adicione isso dentro: function onKill(cid, target, lastHit) if (isCreature(cid)) and getCreatureName(target) == 'Zabolic' then setPlayerStorageValue(cid, 7449, 1) doPlayerLearnInstantSpell(cid, 'Extreme Paralyze') doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, 'Você acaba de receber a magia Extreme Paralyze! Pode usá-la 3 vezes') end return true end salve, feche. Vá em data/creaturescripts, e abra creaturescripts.xml, adicione essa tag: <event type="kill" name="Kill Zabolick" event="script" value="killzabolick.lua"/> Salve, feche. Novamente, vá em data/creaturescripts/scripts, abra o arquivo login.lua, de ctrl+f e procure por registerCreatureEvent, assim que achar, adicione essa linha abaixo dos demais: registerCreatureEvent(cid, "Kill Zabolick") Salve, feche. Agora, substitua o arquivo da sua spell, por esse: local water = {490, 491, 492, 493, 4608, 4609, 4610, 4611, 4612, 4613, 4614, 4615, 4616, 4617, 4618, 4619, 4620, 4621, 4622, 4623, 4624, 4625} local combat = createCombatObject() local meteor = createCombatObject() setCombatParam(meteor, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) setCombatParam(meteor, COMBAT_PARAM_EFFECT, 52) local stun = createConditionObject(CONDITION_PARALYZE) setConditionParam(stun, CONDITION_PARAM_TICKS, 5000) setConditionFormula(stun, -0.8, 0, -0.9, 0) setCombatCondition(meteor, stun) local meteor_water = createCombatObject() setCombatParam(meteor_water, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) setCombatParam(meteor_water, COMBAT_PARAM_EFFECT, 52) setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, -0.8, 0, -1.3, 0) combat_arr = { {0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0}, {0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0}, {1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1}, {1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1}, {1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1}, {1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1}, {1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1}, {1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1}, {1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1}, {0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0}, {0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0} } local combat_area = createCombatArea(combat_arr) setCombatArea(combat, combat_area) local function meteorCast(p) doCombat(p.cid, p.combat, positionToVariant(p.pos)) end local function stunEffect(cid) doSendMagicEffect(getThingPos(cid), CONST_ME_STUN) end function onTargetTile(cid, pos) if (math.random(0, 1) == 1) then local ground = getThingfromPos({x = pos.x, y = pos.y, z = pos.z, stackpos = 0}) if (isInArray(water, ground.itemid) == TRUE) then local newpos = {x = pos.x - 7, y = pos.y - 6, z = pos.z} doSendDistanceShoot(newpos, pos, CONST_ANI_FIRE) addEvent(meteorCast, 300, {cid = cid, pos = pos, combat = meteor_water}) else local newpos = {x = pos.x - 7, y = pos.y - 6, z = pos.z} doSendDistanceShoot(newpos, pos, CONST_ANI_ICE) addEvent(meteorCast, 300, {cid = cid,pos = pos, combat = meteor}) end end end setCombatCallback(combat, CALLBACK_PARAM_TARGETTILE, "onTargetTile") function onCastSpell(cid, var) if getPlayerStorageValue(cid, 7449) == 1 then setPlayerStorageValue(cid, 7450, 1) setPlayerStorageValue(cid, 7449, 0) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, 'Você acaba de usar a magia uma vez') return doCombat(cid, combat, var) elseif getPlayerStorageValue(cid, 7450) == 1 then setPlayerStorageValue(cid, 7451, 1) setPlayerStorageValue(cid, 7450, 0) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, 'Você acaba de usar a magia duas vezes') return doCombat(cid, combat, var) elseif getPlayerStorageValue(cid, 7451) == 1 then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, 'Você acaba de usar a magia pela terceira e última vez') doPlayerUnlearnInstantSpell(cid, 'Extreme Paralyze') setPlayerStorageValue(cid, 7451, 0) end return true end Salve.
- (Resolvido)Talkactions erro no distro
-
Meu primeiro Templo
Considerando que é a primeira vez que tentou, ficou bem legal man.
-
(Resolvido)Talkactions erro no distro
- [Duvida]Sistema De Gemas para carlin war 2.1
Terminei o script agora, não testei. Deixei bem fácil de você configurar. (Script dos Baús). Vá em data/actions/scripts, crie um novo arquivo .lua com o nome de gemsystem, e adicione isso em seu interior: function onUse(cid, item, fromPosition, itemEx, toPosition) local vocations = { druid = 1, sorcerer = 2, paladin = 3, knights = 4, } local actions = { managem = 1111, spiritgem = 3333, knights = 4444, } local items = { item = 2160, quantidade = 100, managem = 5555, spiritgem = 6666, knightgem = 7777 } local messages = { druidsorcerer = 'Esse báu é destinado apenas aos Druids e Sorceres', paladins = 'Esse báu é destinado apenas aos Paladins', knight = 'Esse baú é destinado apenas aos knights', } if item.actionid == actions.managem then if getPlayerVocation(cid) ~= vocations.druid or getPlayerVocation(cid) ~= vocations.sorcerer then doPlayerSendCancel(cid, messages.druidsorcerer) elseif getPlayerItemCount(cid, items.item) <= items.quantidade then doPlayerSendCancel(cid, 'Você precisa de '.. items.quantidade ..' '..getItemNameById(items.item).. 'pra isso.') else doPlayerAddItem(cid, items.managem, 1) doPlayerRemoveItem(cid, items.item, items.quantidade) end return true end if item.actionid == actions.spiritgem then if getPlayerVocation(cid) ~= vocations.paladin then doPlayerSendCancel(cid, messages.paladins) elseif getPlayerItemCount(cid, items.item) <= items.quantidade then doPlayerSendCancel(cid, 'Você precisa de '.. items.quantidade ..' '..getItemNameById(items.item).. 'pra isso.') else doPlayerAddItem(cid, items.spiritgem, 1) doPlayerRemoveItem(cid, items.item, items.quantidade) end return true end if item.actionid == actions.knights then if getPlayerVocation(cid) ~= vocations.knights then doPlayerSendCancel(cid, messages.knight) elseif getPlayerItemCount(cid, items.item) <= items.quantidade then doPlayerSendCancel(cid, 'Você precisa de '.. items.quantidade ..' '..getItemNameById(items.item).. 'pra isso.') else doPlayerAddItem(cid, items.knightgem, 1) doPlayerRemoveItem(cid, items.item, items.quantidade) end end return true end Adicione os action id's nos baús, e adicione-os nessa tabela (Sim, deixei praticamente tudo em tabela, pra facilmente você editar): Para editar os ID's do item que será cobrado, sua quantidade, e o ID's das gemas, edite: Nas vocations, deixei auto explicativo, basta editar conforme o respectivo nome da vocation: Por fim, para editar as mensagens que aparecerão para as vocations que não coincidirem com o baú, edite aqui: Salve, feche. Abra actions.xml, cituado em data/actions, e adicione essa tag: <action itemid="0000" event="script" value="gemsystem.lua"/> Adicione o Item ID do baú. Teste.- (Resolvido)[PEDIDO]
- WoD
- Não Salva o Jogo
- Não Salva o Jogo
Crie um novo arquivo .lua em creaturescripts/scripts, nomeie de playersave, e coloque isso: function onAdvance(cid, skill, oldLevel, newLevel) doPlayerSave(cid) return true end Abra creaturescripts.xml, e coloque essa tag: <event type="advance" name="PlayerSave" event="script" value="playersave.lua"/> Vá novamente em creaturescripts/scripts, abra login.lua. De ctrl+f e procure por RegisterCreatureEvent, após achar, cole isso na ultima linha dos registros: registerCreatureEvent(cid, "PlayerSave") Testa. - [Duvida]Sistema De Gemas para carlin war 2.1
Informação Importante
Confirmação de Termo