Ir para conteúdo

fortation

Barão
  • Total de itens

    207
  • Registro em

  • Última visita

  • Dias Ganhos

    1

Tudo que fortation postou

  1. CARA NO XTIBIA TEM VARIOS TUTORIAL DO QUE VOCE PEDIU TIPO ESSE : http://www.xtibia.com/forum/topic/137376-criar-um-item-com-id-propria-usando-o-item-editor/ TE AJUDEI REP+
  2. ALGUEM FEXE O TOPICO DUVIDA SANADA ! aTT,
  3. Mais Funcionou? Se Tiver Erros Me Fale !
  4. Alem, De ter Varios Scripts como esse vou te ajudar Vá em Talkactions.xml adicione isso la parte dos players: <talkaction words="/aloot" hide="yes" event="script" value="aloot.lua"/> local stor, limit = 7575, 5 --storage, limit to add.[/size][/color][/font] [font="helvetica, arial, sans-serif"][color="#282828"][size=3]local allow_container = false --empty! not looted with items, atleast for now.[/size][/color][/font] [font="helvetica, arial, sans-serif"][color="#282828"][size=3]function onSay(cid, words, param) local expl = param:explode(':') local action, rst = expl[1], expl[2] if (action:lower() == 'check') then local infos, list = getPlayerStorageValue(cid, stor), {} if (infos ~= -1) then list = tostring(infos):explode(',') end local txt = 'Autoloot List:\n' if (#list > 0) then for k, id in ipairs(list) do id = id:gsub('_', '') if tonumber(id) then txt = txt .. getItemNameById(tonumber(id)) .. ((k < #list) and '\n' or '') end end else txt = 'Empty' end doPlayerPopupFYI(cid, txt) elseif (action:lower() == 'add') then local infos, list = getPlayerStorageValue(cid, stor), {} if (infos ~= -1) then list = tostring(infos):gsub('_', ''):explode(',') end if (#list >= limit) then return doPlayerSendCancel(cid, 'You already have ' .. limit .. ' autolooting items.') end local item = tonumber(rst) if not item then item = getItemIdByName(rst, false) if not item then return doPlayerSendCancel(cid, 'Esse item nao existe.') end end if not allow_container and isItemContainer(item) then return doPlayerSendCancel(cid, 'this item can not be autolooted.') end local attrs = getItemInfo(item) if not attrs then return doPlayerSendCancel(cid, 'Esse item nao existe.') elseif not attrs.movable or not attrs.pickupable then return doPlayerSendCancel(cid, 'this item can not be autolooted.') end if isInArray(list, item) then return doPlayerSendCancel(cid, 'Ja foi adicionado.') end table.insert(list, tostring(item)) local new = '' for v, id in ipairs(list) do new = new .. '_' .. id:gsub('_' ,'') .. ((v < #list) and ',' or '') end doPlayerSetStorageValue(cid, stor, tostring(new)) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, 'Item >>' .. getItemNameById(item) .. '<< has been added to the autoloot list.') elseif (action:lower() == 'remove') then local infos, list = getPlayerStorageValue(cid, stor), {} if (infos ~= -1) then list = tostring(infos):gsub('_', ''):explode(',') end if (#list == 0) then return doPlayerSendCancel(cid, 'You dont have any item added.') end local item = tonumber(rst) if not item then item = getItemIdByName(rst, false) if not item then return doPlayerSendCancel(cid, 'not valid item.') end end if not isInArray(list, item) then return doPlayerSendCancel(cid, 'This item is not in the list.') end local new = '' for v, id in ipairs(list) do if (tonumber(id) ~= item) then new = new .. '_' .. id:gsub('_' ,'') .. ((v < #list) and ',' or '') end end doPlayerSetStorageValue(cid, stor, tostring(new)) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, 'Item >>' .. getItemNameById(item) .. '<< removed from the autoloot list.') end return true end Agr vá em creaturescripts.xml e adicione essa tag: Agora em Crie um Arquivo .lua e com nome de aloot.lua e coloque isso e salve dentro da pasta Talkactions: <event type="login" name="aloot_reg" event="script" value="aloot.lua"/> <event type="kill" name="aloot_kill" event="script" value="aloot.lua"/> Agr crie um arquivo .lua e com nome de aloot.lua e coloque isso dentro e salve dentro da pastacreaturescripts/scripts. function onLogin(cid) registerCreatureEvent(cid, "aloot_kill") return true end local stor = 7575 function autoloot(cid, target, pos) local function doStack(cid, itemid, new) local count = getPlayerItemCount(cid, itemid) if (count > 100) then count = count - math.floor(count / 100) * 100 end local newCount = count + new if (count ~= 0) then local find = getPlayerItemById(cid, true, itemid, count).uid if (find > 0) then doRemoveItem(find) else newCount = new end end local item = doCreateItemEx(itemid, newCount) doPlayerAddItemEx(cid, item, true) end local function scanContainer(cid, uid, list) for k = (getContainerSize(uid) - 1), 0, -1 do local tmp = getContainerItem(uid, k) if (isInArray(list, tmp.itemid)) then if isItemStackable(tmp.itemid) and (getPlayerItemCount(cid, tmp.itemid) > 0) then doStack(cid, tmp.itemid, tmp.type) else local item = doCreateItemEx(tmp.itemid, tmp.type) doPlayerAddItemEx(cid, item, true) end doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, 'Looted ' .. tmp.type .. ' ' .. getItemNameById(tmp.itemid) .. '.') doRemoveItem(tmp.uid) elseif isContainer(tmp.uid) then scanContainer(cid, tmp.uid, list) end end end local items = {} for i = getTileInfo(pos).items, 1, -1 do pos.stackpos = i table.insert(items, getThingFromPos(pos)) end if (#items == 0) then return end local corpse = -1 for _, item in ipairs(items) do local name = getItemName(item.uid):lower() if name:find(target:lower()) then corpse = item.uid break end end if (corpse ~= -1) and isContainer(corpse) then scanContainer(cid, corpse, tostring(getPlayerStorageValue(cid, stor)):gsub('_', ''):explode(',')) end end function onKill(cid, target, lastHit) if not isPlayer(target) then local infos = getPlayerStorageValue(cid, stor) if (infos == -1) then return true end local list = tostring(infos):explode(',') if (#list == 0) then return true end addEvent(autoloot, 150, cid, getCreatureName(target), getCreaturePosition(target)) end return true end Pronto Espero ter ajudado ! COMO USAR : /aloot check Cheka a Lista dos Loots /aloot add:itemid ou nome do item Exemplo /aloot add:worm /aloot add:2170 Para remover /aloot remove:worm /aloot remove:2170
  5. Por Que vc nao compila seu otserver ! ira funcionar veja tutoriais de como compilar OTserver Espero Ter Ajudado !
  6. fortation

    Vocations!

    Axo Q Existe 6 Servidores Rozin ! Todas Esses Servidores Tem Essas Vocations !
  7. vai em data/creaturescripts/scripts, duplica um arquivo e nomeia para "battlelogout" nele cole: function onLogout(cid) if (getCreatureCondition(cid, CONDITION_INFIGHT) == TRUE) then doPlayerSendTextMessage(cid, MESSAGE_EVENT_DEFAULT,"Você não pode deslogar com battle.") return false end return true end agora em creaturescripts.xml cole a tag: <event type="logout" name="BattleLogout" event="script" value="battlelogout.lua"/> e no arquivo login.lua: registerCreatureEvent(cid, "BattleLogout")
  8. fortation

    Novos Skills

    Aah Sim Deboa Flws ! Tipo para criar novas novas skills vc teria que arranjar um cara que sabe mecher com C++ !
  9. fortation

    Novos Skills

    EU SEI UM MAIS SO QUANDO O PLAYER PEGA ADDON FULL POR EXEMPLO PEGUEI ADDON FULL WARRIOR E GANHEI 10 DE SKILL ! SE QUISER ASSIM ! ME FALE
  10. VAI EM ACTION PROCURE A TAG DESSE SEU SCRIPT E TROKE POR ESSA <action itemid="5080" event="script" value="itemtype.lua"/>
  11. VAI EM ACTIONS.XML PROCURE A TAG DESSE SCRIPT NO SEU CASO AXO QUE NA TAG DO SEU SCRIPT VAI TA O ID DO ITEM ATUAL SO TROKAR PELO ITEM QUE VC QUER POR EXEMPLO 5080 !
  12. fortation

    Limite De Acc Manger

    NN AINDA FALTA 1 DUVIDA QUE NAO FOI SANADA AINDA !
  13. fortation

    Systema Donate

    CARA VODKART TEM RAZÃO ! MAIS EU VOU AJUDAR VC ENTRE NESSE LINK E VE SE É OQUE VC QUER http://www.xtibia.com/forum/topic/181510-system-points/
  14. JA BATI FINAL NO MARIO UMA 7 VEZ ! E NAO CANSO QUANDO NAO TEM NADA PRA FAZER EU JOGO ! VICIANTE
  15. NAO TEM MOUNT PARA A VERSAO 8.60 POIS ELA NAO É COMPATIVEL TEM UMA MAIS SO É 1 MOUNT ! vamos fazer uma pequena alteração no arquivo items.xml, abra-o e procure por "giant eye", mude esse nome para "mysterious pet", assim: Agora vamos adicionar as actions, vá até a pasta "Actions" e abra o arquivo "Actions.xml" e adicione esta tag: Ok, agora volte a pasta "Actions" e abra a pasta "Scripts", faça uma arquivo chamado "mount.lua" e adicione isto: Pronto agora configure o script da maneira que você quiser! OBS: A inteção do script é algum NPC te vender um item que no caso é o "mysterious pet" e esse item é super raríssimo, ele tem a função de te dar um "PET" misterioso por um certo tempo para você usar ele como montaria! NAO SEI SE VAI FUNFAR MAIS TENTA ! CREDITOS : Vodkart Matheusmkalo Matheus Do TK !
  16. fortation

    Vocations!

    nao entendi ....
  17. fortation

    Vocations!

    claro depois vc vai em DATA/TALKACTIONS e Talkactions.Xml e add essa tag em players <talkaction words="!promo" event="script" value="NOME DO SEU SCRIPT.lua"/>
  18. vai em data\spells\scripts\support crie um arquivo chamado "invisible" coloque isso dentro local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_MAGIC_RED) setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, false) local condition = createConditionObject(CONDITION_INVISIBLE) setConditionParam(condition, CONDITION_PARAM_TICKS, 200000) setCombatCondition(combat, condition) function onCastSpell(cid, var) return doCombat(cid, combat, var) end Ai vc vai em Spells.xml e add essa tag <instant name="Invisibility" words="NOME DA SUA MAGIA" lvl="35" mana="440" aggressive="0" selftarget="1" exhaustion="1000" needlearn="0" event="script" value="support/invisible.lua"> Espero Que De Certo !
  19. local keywordHandler = KeywordHandler:new() local npcHandler = NpcHandler:new(keywordHandler) NpcSystem.parseParameters(npcHandler) 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 travelNode = keywordHandler:addKeyword({'enigma city'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'Do you wish to travel to Enigma City for 50 gold coins?'}) travelNode:addChildKeyword({'yes'}, StdModule.travel, {npcHandler = npcHandler, premium = true, level = 1000, cost = 50, destination = {x=942, y=978, z=6} }) travelNode:addChildKeyword({'no'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, reset = true, text = 'Too expensive, eh?'}) keywordHandler:addKeyword({'destination'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'I can take you to \'Enigma City\' for just a small fee.'}) npcHandler:addModule(FocusModule:new()) premium = true -- se precisa ser premium level = 1000 -- que level precisa ter cost = 50 -- o custo da viagem destination = {x=942, y=978, z=6} -- a pos para onde ele vai
  20. Sim tem Full Respawn Ta Ai Junto Com O Mapa !
  21. GALERA EU QUERIA UM NPC QUE TELETRANSPORTA UM PLAYER PARA UMA CIDADE EXEMPLO EU CONVERSO COM O NPC AI EU SO POSSO SER TELETRANSPORTADO SE EU TIVER LEVEL 1000 DOU REP++ SE ALGUEM CONSEGUIR !
  22. SE NAO DER CERTO TENTE ESSE 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 function creatureSayCallback(cid, type, msg) if(not npcHandler:isFocused(cid)) then return false end local talkUser = NPCHANDLER_CONVbehavior == CONVERSATION_DEFAULT and 0 or cid local msg = string.lower(msg) local promote = { ["promote"] = {level = 20, price = 20000, promotion = 1, premium = false}, ["vip"] = {level = 20, price = 50000, promotion = 2, premium = true} } if promote[msg] then if promote[msg].premium == true and not isPremium(cid) then npcHandler:say('You need a premium account in order to get promoted', cid) return true end if getPlayerPromotionLevel(cid) < promote[msg].promotion then if getPlayerLevel(cid) >= promote[msg].level then if doPlayerRemoveMoney(cid, promote[msg].price) then setPlayerPromotionLevel(cid, promote[msg].promotion) npcHandler:say('Congratulations! You are now promoted!', cid) else npcHandler:say('You need '..promote[msg].price..' gps to buy this promotion.', cid) end else npcHandler:say('I am sorry, but I can only promote you once you have reached level '..promote[msg].level, cid) end else npcHandler:say('You are already promoted!', cid) end end return true end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new()) SCRIPT 100% CRIADO PELO VODKART
  23. vai em talkactions cria um arquivo chamado systemvip coloque isso la dentro -- Script SYtem vip 1.0 -- function onSay(cid, words, param) if(words == "!buyvip") then local price = 3000000 if doPlayerRemoveMoney(cid, 3000000) == TRUE then local days = 30 local daysvalue = days * 24 * 60 * 60 local storageplayer = getPlayerStorageValue(cid,13540) local timenow = os.time() if getPlayerStorageValue(cid, 13540) - os.time() <= 0 then time = timenow + daysvalue else time = storageplayer + daysvalue end Vermelho: na onde ta 13540 vc troka pela STORAGE DA SUA VIP Azul : local days = 30 Quandos Dias De Vip A PEssoa Vai Ter Laranja: local price = 3000000 Quanto a vip vai custar Agr vai em talkactions e coloca essa tag <talkaction words="!vipdays;!buyvip;/checkvip;/addvip;/delvip" script="systemvip.lua"/>
  • Quem Está Navegando   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.
×
×
  • Criar Novo...