Ir para conteúdo

drakylucas

Visconde
  • Total de itens

    416
  • Registro em

  • Última visita

  • Dias Ganhos

    5

Tudo que drakylucas postou

  1. Bom, ontem eu pedi ideias na area de pedidos de uma dessas ideias foi o sistema de clone, que será explicado a seguir: Bom, é bem simples o sistema, e ainda está em sua versão 1.0 então, ainda contem alguns bugs, que serão mostrados também no tópico. O sistema necessita que o jogador digite /clone e, tudo que o jogador fizer o clone vai fazer.. exemplos: mudar roupa, o clone muda atacar, o clone ataca com mesmo dano se curar, o clone se cura também Como Utilizar? digite /clone no jogo. Bugs: Quando o clone atacar, não está saindo distanceEffect (da o dano, mas nao sai o efeitinho vindo do clone) Clone não subindo escadas (depois arrumo isso, é que não tenho a id de todas escadas) Não copia nickname do jogador (para nao ter que modificar sources adicionando createCustomMonster) Instalação: em data/monsters crie o arquvo clone.xml e adicione isso: agora em data/monsters abra o monsters.xml e no meio das tags, adicione isso: <monster name="Clone" file="clone.xml"/> agora, na pasta que fica o executavel do servidor, vá em mods, crie o arquivo clone.xml e adicione isso: Reinicie o servidor (reload não funcionará) e brinque você mesmo.. (digite /clone para se clonar) Créditos: Draky Lucas - Desenvolvimento 100% ThiagoBjiW - Ideia (http://www.xtibia.com/forum/topic/211695-necessito-de-ideias/)
  2. Aqui nao deu nenhum erro oO.. uso o tfs 0.4 rev 3884 sem modificações.. testei tudo com varios MC's abertos, nao deu nenhum errinho oO
  3. vcs complicam demais algo simples oO function remover(uid) if isCreature(uid) then doRemoveCreature(uid) end return true end local config={ removeOnUse = "yes" -- remover quando usar ("yes" or "no") } function onUse(cid, item, fromPosition, itemEx, toPosition) if getCreatureCondition(cid, CONDITION_INFIGHT) == true then return doPlayerSendTextMessage(cid, 27, "Espere o Battle sair para poder usar este item.") end local axe = {x=297,y=34,z=7} if itemEx.itemid == 7703 then doSendMagicEffect(getPlayerPosition(cid), 31) doTeleportThing(cid, axe) doSendMagicEffect(getPlayerPosition(cid), 10) doPlayerSendTextMessage(cid,22,"É AGORA OU NUNCA, KILL THE BOSS !") local summon = doSummonCreature("zathroth", {x=297, y=31, z=7}) addEvent(remover,2*60*1000,summon) -- remover o summon em 2 minutos if (config.removeOnUse == "yes") then doRemoveItem(item.uid, 1) doBroadcastMessage("O jogador "..getPlayerName(cid).." sumonou um boss level 100 na arena e está por tudo ou nada, quer assistir? O comando /goarena foi desbloqueado por 1 minuto !") setGlobalStorageValue(17569, os.time()+60) end return TRUE end end
  4. ja pensou na possibilidade de eu usar exura? script totalmente fail... o exura não funciona mais depois disso ^^ você nao verificou nem se é stats_healthloss ¬¬
  5. bom, fiz em 5 minutos.. então nao é pra estar um script mto profissional porem é divertido em data\actions\scripts\other abra o arquivo fireworksrocket.lua (provavelmente ele ja existira) e substitua TUDO o que estiver dentro por isso: --[[ By Draky Lucas Contact: XTibia.com NÃO RETIRAR OS CREDITOS ]]-- function onUse(cid, item, fromPosition, itemEx, toPosition) local function estourar() for x = -6,6 do for y = -4,4 do if math.random(1,7) == 1 then doSendMagicEffect({x = fromPosition.x + x, y = fromPosition.y + y, z = fromPosition.z},math.random(CONST_ME_FIREWORK_YELLOW, CONST_ME_FIREWORK_BLUE)) end end end end if(fromPosition.x ~= CONTAINER_POSITION) then for i = 0,15 do addEvent(estourar,i*200) end else doCreatureSay(cid, "Ouch! Rather place it on the ground next time.", TALKTYPE_MONSTER) doTargetCombatHealth(0, cid, COMBAT_PHYSICALDAMAGE, -1, -70, math.random(CONST_ME_FIREWORK_YELLOW, CONST_ME_FIREWORK_BLUE)) end doRemoveItem(item.uid) return true end de /reload actions , crie o item 6576 e teste você mesmo ^^
  6. enfim, eu fiz só a skin.. a barra de HP está ali também pois existe o atributo Vitality, que ao adicionar faz com que o player ganhe mais HP ... assim fica mais legal aparentemente ^^ nao fica bom colocar botao de retirar não, pois imagina eu no level 10 preciso ser full força, e no lvl 100 ja preciso mais dex do que força pra ter um critico bom.. ai a pessoa tiraria tudo de um e colocaria no outro.. a ideia não é modificar as builds de cada um.. o que poderia ter é algum item comprado no shop ou obtido em quest em que resetasse os atributos.. ^^ ai também ja daria mais comercio ao jogo ^^ minha ideia é mais ou menos a seguinte: os Skills (sword,club...) ajudariam muito pouco ao dano do player, porem seria necessario te-los para usar as armas, você precisaria de skill 90, por exemplo, pra usar uma SOV... o dano seria calculado com cerca de apenas uns 15~20% do dano que o tibia é atualmente (atravez de skill) e os outros 80% atravez de atributos que as armas poderão dar, somados ao strenght ^^.. o ML serviria para poder aprender a magia, mas o dano seria mais ou menos o mesmo esquema, 20% pelo skill magic level e 80% pela inteligence ^^... e por ai vai.. tenso é q estou sem muito tempo livre, e essa bosta de pc demora demais pra compilar o servidor =/.. dae pra ficar testando toda hora as modificações server-sided fica tenso =/ kkk
  7. identação é tipo o espaço que fica entre cada linha (entre ifs diferentes, etc) exemplo: function onUse(cid, item, frompos, item2, topos) local chance = 80 -- chance de cortar local madeiras = {5941, 5901} -- item que o player irá ganhar local premio = madeiras[math.random(1, #madeiras)] local transformItem = 8786 local texts = {"Tuc", "Toc", "Trec"} local random = texts[math.random(1,#texts)] local vocationUse = 2 local time = 2 -- Minutos para crescer novamente if getPlayerVocation(cid) == vocationUse then if item2.itemid == 2708 or item2.itemid == 2700 or item2.itemid == 6218 or item2.itemid == 2701 or item2.itemid == 2707 then if math.random(1,100) >= chance then doPlayerAddItem(cid,premio, math.random(1, 2)) doTransformItem(item2.uid, transformItem) doSendMagicEffect(topos, 16) doPlayerSendTextMessage(cid,22,"Você cortou uma madeira.") doSendAnimatedText(topos, ""..random.."", TEXTCOLOR_GREEN) doDecayItem(item2.uid) addEvent(doCreateItem, time*60*1000, novaarvore, 1, getThingPos(item2.uid)) else doSendAnimatedText(topos, ""..random.."", TEXTCOLOR_GREEN) doPlayerSendTextMessage(cid,22,"Você não conseguiu cortar.") end end end return true end pode ver, é o seu script, porem mais organizado ^^ é que se nao fica dificil de saber onde termina cada if, e em scripts grandes pode dar zebra kk a ideia é legal.. pra quem ja jogou o bronsonserver, la pode utilizar isso para criar internal bolts.. é só saber adaptar a ideia ^^
  8. dica: utilize CODE e nao quote, e copie com a identação.. fica mais facil de ler o script.
  9. pode utilizar modificações nas sources do OTClient / Sources do OT tbm para add novas features? tipo pra fazer isso (usando extended ops code + new skills) http://img28.imageshack.us/img28/4474/imagemmwr.jpg (PS: Ainda nao desenvolvido completamente... porem a skin ta quase pronta e a parte de receber new skills tbm ta pronta) kk
  10. LuckinhaSan SkyLigh
  11. lol? eu nem sabia q o tr era pra traduzir oO.. oww slicer, tira uma duvida entao? como posso fazer pra traduzir automaticamente entao? tipo eu deixo text: 'Dexterity' e embaixo text: tr('Destreza') ?? vlw
  12. estou com uma duvida, como coloco simbolos? (tipo %) em text de label? !text: tr('%') isso nao funciona =/ ja tentei etc.. nada funcionou =/ alguem ajuda? ty
  13. isso dai seria tipo o npc da post office quest? porem ele só "passa" a missão ao jogador, e o scripter cria os scripts das missões, exemplo ir até a um lugar X, usar a pick e ganhar uma storage... parabens, fico legal kk
  14. adicione Reiniciar o computador ao tutorial.. ontem eu havia feito tudo certo e nao funcionou, hoje, liguei o pc quase agora, apenas abri o cmake, gerei, abri o arquivo gerado e hj compilou normal ¬¬ kk
  15. mas eu fiz passo a passo, segui o tutorial exatamente igual, todas as fotos e etc.. coloquei a linha na variavel Path, tudo certinho.. e deu o erro ao compilar, dae fechei e instalei o Cmake dinovo clicando naquela opção de all users.... abri o cmake, gerei o arquivo dnv, e tentei compilar dnv, o erro continua. =/ tem q reiniciar o pc? (se tiver hj nem vo compilar =/ kk)
  16. -------------- Clean: all in otclient --------------- Cleaned "otclient - all" -------------- Build: all in otclient --------------- Using makefile: Makefile Execution of 'make.exe -s -f Makefile all' in 'C:\Documents and Settings\Lucas\Desktop\teste_build_otclient' failed. Nothing to be done. fail =/ e segui passo a passo =/..
  17. cara, se usasse o OTClient, nao vejo o por que ser 8.60.. faz na versão mais atual, adicione sistemas unicos, ainda nao existentes,etc... questao do elfbot: se o servidor for map proprio, os wpts teriam q ser feitos do msmo jeito, entao pq nao fazer um BOT bom no proprio client? ele ja vem com o CandyBot, melhora ele colocando cave-hunt, dash, etc q ele viraria um elfbot.. entao a questao BOT nem vai existir ^^
  18. nao, nao é isso groupBox é tipo um quadrado que fica em volta de determinados objetos, e oq vc fizer no quadrado (alterar fonte, etc) os objetos também recebem os atributos... exemplo: http://www.java2v.co...s/FormGroup.PNG pra quem programa C# ou Java, ele é muito util, alem de dar uma aparencia muito melhor a janela. @Darckx13 nao é isso.. isso é OPCODE .. nao tem nada a ver. aaa consegui em partes, agora é outra duvida =/ como faço pra groupBox (Window) ficar FIXA na janela? sem poder ficar mexendo ela, tipo se eu mecher a mainWindow ela mexer junto, mas se eu voltar, ela tbm voltar... aqui o groupbox: MainWindow id: AttributeWindow !text: tr('Attributes') size: 700 300 @onClose: toggle() &save: true Window id: DistributeWindow clipping: false anchors.left: prev.right archors.top: prev.top text: Distribute size: 200 230 background-color: #000000 opacity: 0.80 phantom: true dragable: false Label id: strenghtLabel size: 100 30 font: sans-bold-16px !text: tr('Strenght: ') anchors.left: parent.left anchors.top: parent.top Label id: skillId0 size: 45 30 font: sans-bold-16px anchors.top: prev.top anchors.left: prev.right Button id: addStrenght anchors.top: prev.top anchors.left: prev.right font: sans-bold-16px !text: tr('+') size: 20 20 margin-left: 10 PS: dragable: false NAO FUNCIONA EDIT: consegui, pra quem tiver tentando é só arrumar os paddings.. Window id: DistributeWindow clipping: false anchors.top: parent.top anchors.left: parent.left text: Distribute size: 200 230 background-color: #000000 opacity: 0.80 phantom: true
  19. Como eu crio groupBox no otui, e defino o espaço / o que vai ter dentro?? ty
  20. simples, vc usa onThink no lugar de onTime ¬¬ mude function onThink(interval, lastExecution) para function onTime() acho q é só isso.. se nao funcionar poste o erro.
  21. uma duvida, ai está perfeitamente como receber dados do client no servidor, mas vc pode explicar como envio os dados do cliente para o servidor? e o contrario também (como fazer, por exemplo, enviar a informação de uma storage para o client atravez de uma talkaction e receber em alguma função no client q mostre em uma janelinha o valor.. ? ) ty
  22. dalvorsn ta errado, vc ta colocando erro se for da vocação ^^ tente assim: function onUse(cid, item, frompos, item2, topos) local monstro = getItemAttribute(item.uid, "corpse") local health = getItemAttribute(item.uid, "health") local name = getItemAttribute(item.uid, "monstro") local vocationUse = {4, 8} -- poem a vocação e a promotion if #getCreatureSummons(cid) > 3 then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você ja esta usando uma reencarnação ou um pet") return true end if getPlayerMana(cid) < health/100*70 then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você não tem chakra suficiente") return true end if getPlayerStorageValue(cid, 24436) == 1 then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você não pode invocar mais de reanimação junto.") return true end if not isInArray(vocationUse, getPlayerVocation(cid)) then return doPlayerSendTextMessage(cid,22,"Você não tem a vocação apropriada") end t = doCreateMonster(monstro, getThingPos(cid)) doConvinceCreature(cid, t) setCreatureMaxHealth(t, health) doCreatureAddHealth(t, health) doPlayerAddMana(t, -getItemAttribute(item.uid, "health")/90) setPlayerStorageValue(cid, 24436, name) return true end (só coloquei o not, de resto tava certo)
  23. em data/movements/scripts crie treinarMl.lua e nele coloque isso: -- by Draky Lucas function addMana(cid,value) if not isPlayer(cid) then return true end doPlayerAddMana(cid,value) doSendAnimatedText(getCreaturePosition(cid),"+"..value,math.random(1,216)) addEvent(addMana,500,cid,value) return true end function onStepIn(cid, item, position, lastPosition, fromPosition, toPosition, actor) addEvent(addMana,500,cid,3100) return true end function onStepOut(cid, item, position, lastPosition, fromPosition, toPosition, actor) return stopEvent(addMana) end -- By Draky Lucas agora em movements/movements.xml coloque isso: <movevent type="StepOut" actionid="1513" event="script" value="treinarMl.lua"/> <movevent type="StepIn" actionid="1513" event="script" value="treinarMl.lua"/> nos tiles que forem da camara de treinar ml, coloque actionID 1513 ajudei? rep+
  24. if os.date("%A") == "Sunday" --comandos do globalevent end Segunda-feira - Monday Terça-feira - Tuesday Quarta-feira - Wednesday Quinta-feira - Thursday Sexta-feira - Friday Sábado - Saturday Domingo - Sunday só mudar o Sunday pra o dia que você quiser.. vo elaborar um script aqui e ja te mando. edit: function onTime() local mensagens = { ["Monday"] = {msgs = {"OMG, HOJE É SEGUNDA FEIRA","KKKKKKKKKKK","RONALDO"}}, ["Tuesday"] = {msgs = {"Vish"}}, ["Wednesday"] = {msgs = {"LOL","WTF"}}, ["Thursday"] = {msgs = {"a"}}, ["Friday"] = {msgs = {"b"}}, ["Saturday"] = {msgs = {"c"}}, ["Sunday"] = {msgs = {"d"}}, } local mensagem = mensagens[os.date("%A")] doBroadcastMessage(mensagem.msgs[math.random(1,#mensagem.msgs)]) -- vai manda randomicamente uma das mensagens do dia XXX! return true end NAO TESTEI, arruma o xml ai.. se nao funcionar, usa onThink msmo com interval a cada hora =p
  25. drakylucas

    Thunder Mods

    ERROR: protected lua call failed: LUA ERROR: /Thunder/Thunder.lua:68: attempt to call global 'checkServerMod' (a nil value) stack traceback: [C]: in function 'checkServerMod' /Thunder/Thunder.lua:68: in function 'callback' /client_topmenu/topmenu.lua:31: in function </client_topmenu/topmenu.lua:29> nao funciona.
  • Quem Está Navegando   0 membros estão online

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