zerefshirou 112 Postado Fevereiro 4, 2012 Share Postado Fevereiro 4, 2012 @lucashgas Li o topico e realmente, não é isso que estamos procurando. Link para o comentário Compartilhar em outros sites More sharing options...
marcelvini27 3 Postado Fevereiro 4, 2012 Share Postado Fevereiro 4, 2012 bem valeu ae last demon, mais tipo se n me engano o problema da cdbar + shiny system é o arquivo some functions da pasta lib, pelomenos é oq eu axo, tem como vc me passa ele? ^^ Link para o comentário Compartilhar em outros sites More sharing options...
BLACKHERT 1 Postado Fevereiro 4, 2012 Share Postado Fevereiro 4, 2012 @ ZerefShirou Eu estou usando seus sistemas Fight Tower: tudo correr bem, mas acabam brigando com Chuck Norris booklungs seu prêmio, e pode voltar a lutar com Chuck Norris e voltar a ganhar o prêmio: S uma idéia? Link para o comentário Compartilhar em outros sites More sharing options...
gmharea 3 Postado Fevereiro 4, 2012 Share Postado Fevereiro 4, 2012 como q tiiiraa a perda de life enquanto estiver usando dive?? Link para o comentário Compartilhar em outros sites More sharing options...
ploshvisk 2 Postado Fevereiro 4, 2012 Share Postado Fevereiro 4, 2012 @BLACKHERT Faz uma storage para que não possa fazer 2x a mesma coisa. Link para o comentário Compartilhar em outros sites More sharing options...
zerefshirou 112 Postado Fevereiro 4, 2012 Share Postado Fevereiro 4, 2012 @BLACKHERT Bookloogs? WHAT? Cara quando eu fiz eu coloquei 2 storages para nao ganharem 2 vezes e.e Link para o comentário Compartilhar em outros sites More sharing options...
darkeyren 13 Postado Fevereiro 4, 2012 Share Postado Fevereiro 4, 2012 (editado) @GMHareaOT data/movements/scripts/drown.lua local condition = createConditionObject(CONDITION_DROWN) setConditionParam(condition, CONDITION_PARAM_PERIODICDAMAGE, -20) setConditionParam(condition, CONDITION_PARAM_TICKS, -1) setConditionParam(condition, CONDITION_PARAM_TICKINTERVAL, 2000) function onStepIn(cid, item, position, fromPosition) if(isPlayer(cid)) then doAddCondition(cid, condition) end return true end function onStepOut(cid, item, position, fromPosition) doRemoveCondition(cid, CONDITION_DROWN) return true end No numero 20 é o tanto de perda de life que ele recebe ;] ' Editado Fevereiro 4, 2012 por DarkeyreN Link para o comentário Compartilhar em outros sites More sharing options...
zerefshirou 112 Postado Fevereiro 4, 2012 Share Postado Fevereiro 4, 2012 @GMHareaOT e @DarkeyreN Desativa no movements, facilitando e ainda pode usar essas aguas para outra coisa. Link para o comentário Compartilhar em outros sites More sharing options...
BLACKHERT 1 Postado Fevereiro 4, 2012 Share Postado Fevereiro 4, 2012 (editado) @ZerefShirou Quest local level = 1 local extrastr = 5 local btype = "normal" function onUse(cid, item, frompos, item2, topos) local pokemon = "" if item.uid == nil then return true end if item.itemid == 12420 then pokemon = "Hitmonlee" elseif item.itemid == 12574 then pokemon = "Hitmonchan" else return true end if getPlayerStorageValue(cid, 344487) == 2 then return doPlayerSendCancel(cid, "You have picked your prize!") end if getPlayerStorageValue(cid, 344487) ~= 1 then return doPlayerSendCancel(cid, "You need own all fight trainer to choose your prize!") end if getPlayerMana(cid) >= 6 then return doPlayerSendCancel(cid, "You don't have capacity for your prize!") end if pokemon == "" then return true end local gender = getRandomGenderByName(pokemon) local mypoke = getPokemonStatus(pokemon) if not mypoke then return true end local offense = mypoke.off * level * extrastr local defense = mypoke.def * level * extrastr local speed = mypoke.agi * level * extrastr local vit = mypoke.vit * level * extrastr local spatk = mypoke.spatk * level * extrastr local happy = 180 local leveltable = getPokemonExperienceTable(pokemon) local item = doCreateItemEx(2219) doItemSetAttribute(item, "poke", pokemon) doItemSetAttribute(item, "hp", 1) doItemSetAttribute(item, "level", level) doItemSetAttribute(item, "exp", leveltable[level]) doItemSetAttribute(item, "nextlevelexp", leveltable[level+1] - leveltable[level]) doItemSetAttribute(item, "offense", offense) doItemSetAttribute(item, "defense", defense) doItemSetAttribute(item, "speed", speed) doItemSetAttribute(item, "vitality", vit) doItemSetAttribute(item, "specialattack", spatk) doItemSetAttribute(item, "happy", happy) doItemSetAttribute(item, "gender", gender) if pokemon == "Hitmonchan" then doItemSetAttribute(item, "hands", 0) end doItemSetAttribute(item, "description", "Contains a "..pokemon..".") doItemSetAttribute(item, "fakedesc", "Contains a "..pokemon..".") doPlayerAddItemEx(cid, item, true) doTransformItem(item, pokeballs[btype].on) doPlayerSendTextMessage(cid, 27, "You choose a "..pokemon..".") setPlayerStorageValue(cid, 344487, 2) doSendMagicEffect(getThingPos(cid), 29) doSendMagicEffect(getThingPos(cid), 27) doSendMagicEffect(getThingPos(cid), 29) return TRUE end Npc chuk norris ele da storage 344487 local focus = 0 local max_distance = 8 local talk_start = 0 local conv = 0 local fighting = false local challenger = 0 local afk_limit_time = 30 -- seconds local afk_time = 0 -- don't change local battle_turn = 1 -- don't change local challenger_turn = 0 -- don't change local pokemons = { {name = "Shiny Machamp", level = 100, extralevel = 150, sex = SEX_MALE, nick = "", ball = "normal"}, } local function doSummonGymPokemon(npc) local this = npc if not isCreature(this) then return true end if #getCreatureSummons(this) >= 1 or focus == 0 then return true end local it = pokemons[battle_turn] doSummonMonster(this, it.name) local summon = getCreatureSummons(this)[1] local balleffect = pokeballs["normal"].effect if it.ball and pokeballs[it.ball] then balleffect = pokeballs[it.ball].effect end doSendMagicEffect(getThingPos(summon), balleffect) setPlayerStorageValue(summon, 10000, balleffect) setPlayerStorageValue(summon, 10001, gobackmsgs[math.random(#gobackmsgs)].back:gsub("doka", it.nick ~= "" and it.nick or it.name)) setPlayerStorageValue(summon, 1007, it.nick ~= "" and it.nick or it.name) doSetMonsterGym(summon, focus) local name = it.nick ~= "" and it.nick or getCreatureName(this).."s "..it.name setWildPokemonLevel(summon, it.level, getPokemonStatus(it.name, (it.extralevel + it.level)), name, 1.5) doCreatureSay(this, gobackmsgs[math.random(#gobackmsgs)].go:gsub("doka", getPlayerStorageValue(summon, 1007)), 1) fighting = true battle_turn = battle_turn + 1 end local function doWinDuel(cid, npc) if not isCreature(cid) then return true end local this = npc doPlayerSetStorageValue(cid, 344487, 1) doCreatureSay(npc, "You won the duel! Congratulations, choose your prize!", 1) end function onCreatureSay(cid, type, msg) local msg = string.lower(msg) if focus == cid then talk_start = os.clock() end if msgcontains(msg, 'hi') and focus == 0 and getDistanceToCreature(cid) <= 4 then focus = cid talk_start = os.clock() conv = 1 selfSay("Hello "..getCreatureName(cid)..", my name is Chuck Norris and I'm Last's Fight Trainer. How may I help you?") return true end if isDuelMsg(msg) and conv == 1 and focus == cid then if getPlayerStorageValue(cid, 344481) ~= 1 or getPlayerStorageValue(cid, 344482) ~= 1 or getPlayerStorageValue(cid, 344483) ~= 1 or getPlayerStorageValue(cid, 344484) ~= 1 or getPlayerStorageValue(cid, 344485) ~= 1 or getPlayerStorageValue(cid, 344485) ~= 1 then selfSay("You need defeated the first, second, third, fourth, fifth and sixth trainer.") focus = 0 return true end if getPlayerStorageValue(cid, 344487) == 1 then selfSay("You have defeated my, choose your prize!") focus = 0 return false end if not hasPokemon(cid) then selfSay("To battle agains't a gym leader you need pokemons.") return true end selfSay("You are challenging me to a battle. It will be a "..#pokemons.." pokemon limit battle, let's start?") conv = 2 return true end if isConfirmMsg(msg) and conv == 2 and focus == cid then challenger = focus setPlayerStorageValue(cid, 990, 1) selfSay("Yea, let's fight!") talk_start = os.clock() addEvent(doSummonGymPokemon, 850, getThis()) conv = 3 return true end if isNegMsg(msg) and conv == 2 and focus == cid then focus = 0 selfSay("It is better for you to refuse a battle against me!") return true end if msgcontains(msg, 'bye') and focus == cid then selfSay('Bye and do your best trainer!') setPlayerStorageValue(focus, 990, -1) focus = 0 return true end end local afk_warning = false local change = false function onThink() if focus == 0 then selfTurn(2) fighting = false challenger = 0 challenger_turn = 0 battle_turn = 1 afk_time = 0 afk_warning = false if #getCreatureSummons(getThis()) >= 1 then setPlayerStorageValue(getCreatureSummons(getThis())[1], 1006, 0) doCreatureAddHealth(getCreatureSummons(getThis())[1], -getCreatureMaxHealth(getCreatureSummons(getThis())[1])) end return true else if not isCreature(focus) then focus = 0 return true end if fighting then talk_start = os.clock() if not isCreature(getCreatureTarget(getThis())) then if #getCreatureSummons(challenger) >= 1 then selfAttackCreature(getCreatureSummons(challenger)[1]) change = true afk_time = 0 else afk_time = afk_time + 0.5 if change then change = false challenger_turn = challenger_turn + 1 end end end if afk_time > afk_limit_time then setPlayerStorageValue(focus, 990, -1) focus = 0 selfSay("I have waited too long, come back when you are ready!") return true end if not afk_warning and afk_time > afk_limit_time / 2 then selfSay("Where's your pokemon? Let's fight!") afk_warning = true end if #getCreatureSummons(getThis()) == 0 then if battle_turn > #pokemons then addEvent(doWinDuel, 1000, focus, getThis()) setPlayerStorageValue(focus, 990, -1) focus = 0 return true end addEvent(doSummonGymPokemon, 1000, getThis()) end if not hasPokemon(challenger) or challenger_turn >= 7 or challenger_turn > #pokemons then selfSay("You lost our duel! Maybe some other time you'll defeat me.") setPlayerStorageValue(focus, 990, -1) focus = 0 return true end end local npcpos = getThingPos(getThis()) local focpos = getThingPos(focus) if npcpos.z ~= focpos.z then setPlayerStorageValue(focus, 990, -1) focus = 0 selfSay("Bye then.") return true end if (os.clock() - talk_start) > 30 then selfSay("Good bye and keep training!") setPlayerStorageValue(focus, 990, -1) focus = 0 end if getDistanceToCreature(focus) > max_distance then setPlayerStorageValue(focus, 990, -1) focus = 0 return true end local dir = doRedirectDirection(getDirectionTo(npcpos, focpos)) selfTurn(dir) end return true end Eu vejo é que o storage e 344487,você sabe como consertar? você fez o sistema Editado Fevereiro 4, 2012 por BLACKHERT Link para o comentário Compartilhar em outros sites More sharing options...
darkeyren 13 Postado Fevereiro 4, 2012 Share Postado Fevereiro 4, 2012 @ZerefShirou Sim eu fiz isso, só que fiquei com preguiça de procurar no movements OKASOAKSOAK (: @GMHareaOT Retire a tag do drown.lua no movements.xml ;P @BLACKHERT Eu fiz minha quest por box (: Champion Box, ganha Hitmonlee, Hitmonchan, Hitmontop ou Tyrogue . Link para o comentário Compartilhar em outros sites More sharing options...
zerefshirou 112 Postado Fevereiro 4, 2012 Share Postado Fevereiro 4, 2012 Você não entendeu direito, é o mesmo storage? Sim, mas não o mesmo valor Quando ganha do Chuck Norris, voce ganha o valor 1, precisa do valor 1 para pegar o pokemon, quando pega o pokemon ganha valor 2, com valor 1 ou 2 nao da pra lutar com chuck norris, e com valor 2 bloqueia pegar outro pokemon. Link para o comentário Compartilhar em outros sites More sharing options...
BLACKHERT 1 Postado Fevereiro 4, 2012 Share Postado Fevereiro 4, 2012 @ ZerefShirou para ser então eu acho que é certo como você diz, mas em um valor de 2 dando o jogador pode continuar a lutar com Chuck Norris Link para o comentário Compartilhar em outros sites More sharing options...
zerefshirou 112 Postado Fevereiro 4, 2012 Share Postado Fevereiro 4, 2012 Tem certeza? se você olhar o chuck e outros, o chuck tem 2 condições de storage, pode ver perto do "isDuel" a segunda e pra checar se ja ganho do chuck Link para o comentário Compartilhar em outros sites More sharing options...
pocotozinho 6 Postado Fevereiro 4, 2012 Share Postado Fevereiro 4, 2012 Alguem poderia me dizer como tira o bug que o player toma dano em baixo da agua e mostra a pasta que mostra como por dive sistem Link para o comentário Compartilhar em outros sites More sharing options...
zerefshirou 112 Postado Fevereiro 4, 2012 Share Postado Fevereiro 4, 2012 @pocotozinho No movements.xml procura scripts que tenham como "value" ou "script" com nome de "drown.lua" remova as linhas que tiver isso Link para o comentário Compartilhar em outros sites More sharing options...
Posts Recomendados