big_headi 0 Postado Julho 28, 2011 Share Postado Julho 28, 2011 Olá! Estou com problema no meu sistema svargrond. Compro a passagem, entro onde fica o teleport. Então entro no teleport do primeiro monstro, quando eu mato ele e tento entrar no próximo teleport diz a seguinte mensagem "First Kill Monster" Alguém pode me ajudar? obrigado desde já! alguem? Link para o comentário Compartilhar em outros sites More sharing options...
Mulizeu 86 Postado Julho 28, 2011 Share Postado Julho 28, 2011 Posta Seu Script Para facilitar assim que possivel eu do uma olhada nele...!!! Link para o comentário Compartilhar em outros sites More sharing options...
big_headi 0 Postado Julho 29, 2011 Autor Share Postado Julho 29, 2011 data\creaturescripts\scripts arena.lua function onPrepareDeath(cid) -- INICIO CONFIG -- local a = { l = {x=944,y=963,z=7}, -- canto superior esquerdo da arena r = {x=952,y=957,z=7}, -- canto inferior direito da arena e = {x=948,y=959,z=7} -- saida/local a ser teleportado quando "morre" } -- FINAL CONFIG -- local p = getCreaturePosition(cid) -- nao mexa if isInRange(p, a.l, a.r) then doSendMagicEffect(p, CONST_ME_STUN) doTeleportThing(cid, a.e) doCreatureAddHealth(cid, getCreatureMaxHealth(cid)) doCreatureAddMana(cid, getCreatureMaxMana(cid)) return FALSE end return true end data\creaturescripts\scripts arenakill.lua local t = { newPos = {x=33062, y=31029, z=7}, msg = "You have won! As new champion take the ancient armor as reward before you leave.", area = { fromX = 33054, toX = 33073, fromY = 31026, toY = 32356, z = 3 } } local spheres = { ['energy overlord'] = 8568, ['fire overlord'] = 8569, ['ice overlord'] = 8570, ['earth overlord'] = 8578 } function getCreaturesInRange(position, radiusx, radiusy, showMonsters, showPlayers, showSummons) local creaturesList = {} for x = -radiusx, radiusx do for y = -radiusy, radiusy do if not (x == 0 and y == 0) then creature = getTopCreature({x = position.x+x, y = position.y+y, z = position.z, stackpos = 253}) if (creature.type == 1 and showPlayers == TRUE) or (creature.type == 2 and showMonsters == TRUE and (showSummons == FALSE or (showSummons == TRUE and getCreatureMaster(creature.uid) == (creature.uid)))) then table.insert(creaturesList, creature.uid) end end end end local creature = getTopCreature(position) if(creature.type == 1 and showPlayers == TRUE) or (creature.type == 2 and showMonsters == TRUE and (showSummons == FALSE or (showSummons == TRUE and getCreatureMaster(creature.uid) == (creature.uid)))) then if not(table.find(creaturesList, creature.uid)) then table.insert(creaturesList, creature.uid) end end return creaturesList end function onKill(cid, target, damage, flags) if isPlayer(target) or not isInArray({1, 3}, flags) or getCreatureMaster(target) then return true end local name = getCreatureName(target):lower() if name == 'tirecz' then local players = getCreaturesInRange({x=33063, y=31035,z=3}, 10, 9, FALSE, TRUE) for i = 1, #players do doTeleportThing(players[i], t.newPos) doCreatureSay(players[i], t.msg, TALKTYPE_ORANGE_1, false, players[i], getCreaturePosition(players[i])) end return true end if spheres[name] then setGlobalStorageValue(spheres[name], -1) return true end local now = tasks[name] if (now) then if isInArray({-1, now.amount}, getPlayerStorageValue(cid, now.storage)) or (not isInArray({14003, 14004, 14005}, now.storage) and getPlayerStorageValue(cid, 14500) ~= now.storage) then return true end local newValue = getPlayerStorageValue(cid, now.storage) + 1 setPlayerStorageValue(cid, now.storage, newValue) end local room = getArenaMonsterIdByName(getCreatureName(target)) if room > 0 then setPlayerStorageValue(cid, room, 1) doPlayerSendTextMessage(cid,MESSAGE_EVENT_DEFAULT,'You can enter next room!') end return true end data\movements\scripts arenagoblet.lua function onStepIn(cid, item, position, fromPosition) local gobletPos = getThingPos(item.uid) if item.actionid == 42360 then if getPlayerStorageValue(cid, 42360) ~= 1 then setPlayerStorageValue(cid, 42360, 1) local goblet = doCreateItemEx(5807, 1) doItemSetAttribute(goblet, "description", "It is given to the courageous victor of the barbarian arena greenhorn difficulty.\nAwarded to " .. getCreatureName(cid) .. ".") doTileAddItemEx({x=gobletPos.x,y=gobletPos.y-1,z=gobletPos.z}, goblet) end elseif item.actionid == 42370 then if getPlayerStorageValue(cid, 42370) ~= 1 then setPlayerStorageValue(cid, 42370, 1) local goblet = doCreateItemEx(5806, 1) doItemSetAttribute(goblet, "description", "It is given to the courageous victor of the barbarian arena scrapper difficulty.\nAwarded to " .. getCreatureName(cid) .. ".") doTileAddItemEx({x=gobletPos.x,y=gobletPos.y-1,z=gobletPos.z}, goblet) end elseif item.actionid == 42380 then if getPlayerStorageValue(cid, 42380) ~= 1 then setPlayerStorageValue(cid, 42380, 1) local goblet = doCreateItemEx(5805, 1) doItemSetAttribute(goblet, "description", "It is given to the courageous victor of the barbarian arena warlord difficulty.\nAwarded to " .. getCreatureName(cid) .. ".") doTileAddItemEx({x=gobletPos.x,y=gobletPos.y-1,z=gobletPos.z}, goblet) end end doTransformItem(item.uid, item.itemid - 1) return TRUE end function onStepOut(cid, item, pos) doTransformItem(item.uid, item.itemid + 1) return TRUE end arenaroom.lua function onStepIn(cid, item, position, fromPosition) if InitArenaScript == 0 then InitArenaScript = 1 -- make arena rooms free for i = 0,9 do setGlobalStorageValue(42300+i, 0) setGlobalStorageValue(42400+i, 0) end checkArenaRooms({}) end local arena_room = item.actionid local player_arena = getPlayerStorageValue(cid, 42355) if getPlayerStorageValue(cid, arena_room+getPlayerStorageValue(cid, 42355)*10-1) == 1 or arena_room+getPlayerStorageValue(cid, 42355)*10-1 == 42299 then if getGlobalStorageValue(cid, arena_room) == 0 then local monster_uid = type(getStorage(arena_room+100)) == 'string' and 0 or getStorage(arena_room+100) if monster_uid > 0 then if isCreature(monster_uid) == TRUE then doRemoveCreature(monster_uid) end end local spawn_pos = getThingPos(arena_room) local monster = doCreateMonster(arena_monsters[arena_room+getPlayerStorageValue(cid, 42355)*10], {x=spawn_pos.x-1,y=spawn_pos.y-1,z=spawn_pos.z}) setGlobalStorageValue(arena_room+100, monster) doTeleportThing(cid, spawn_pos, TRUE) setGlobalStorageValue(arena_room, cid) setGlobalStorageValue(arena_room-1, 0) setPlayerStorageValue(cid, 42350, os.time()+arena_room_max_time) else doTeleportThing(cid, fromPosition, TRUE) doPlayerSendTextMessage(cid,MESSAGE_STATUS_CONSOLE_ORANGE,getCreatureName(getGlobalStorageValue(cid, arena_room))..' is now in next room. Wait a moment and try again.') end else doTeleportThing(cid, fromPosition, TRUE) doPlayerSendTextMessage(cid,MESSAGE_STATUS_CONSOLE_ORANGE,'First kill monster!') end if arena_room == 42300 then setPlayerStorageValue(cid, 42351, 0) setPlayerStorageValue(cid, 42352, 1) end return TRUE end function checkArenaRooms(param) addEvent(checkArenaRooms, 1000, {}) for i = 42300, 42309 do local player = getGlobalStorageValue(i) if isPlayer(player) == TRUE then local player_storage = getPlayerStorageValue(player, 42350) if player_storage <= os.time() then doTeleportThing(player, arenaKickPosition, TRUE) setPlayerStorageValue(player, 42350, 0) setGlobalStorageValue(i, 0) doPlayerSendTextMessage(player,MESSAGE_STATUS_CONSOLE_ORANGE,'You have been kicked from arena! You have only ' .. arena_room_max_time .. ' seconds for one room.') elseif player_storage - 10 <= os.time() then doPlayerSendTextMessage(player,MESSAGE_EVENT_DEFAULT,'You have ' .. player_storage - os.time() .. ' seconds to go to the next room!') end else setGlobalStorageValue(i, 0) end end end alguem? Link para o comentário Compartilhar em outros sites More sharing options...
Posts Recomendados