Ir para conteúdo

Featured Replies

Postado

Olá a todos!

 

Bom, estou criando um server 7.6 mas estou com um probleminha...

Criei uma arena que é bem simples, o player fica em um sqm e puxa alavanca, é teleportado para uma sala que fica de frente para o monstro e atraz do monstro tem um TP para a sala de recompensa. Mas o problema que preciso fazer um meio que o player não possa fazer ela 2x ou com que outro player n entre em quanto o 1º player esteja na arena.

 

alavanca.xml

 

function onUse(cid, item, frompos, item2, topos) 

if item.uid == 6003 then
if item.itemid == 1945 then
player1pos = {x=32915, y=32328, z=15, stackpos=253}
player1 = getThingfromPos(player1pos)
 
 
 
if player1.itemid > 0 then
 
player1level = getPlayerLevel(player1.uid)
 
questlevel = 80
 
if player1level >= questlevel then
 
queststatus1 = getPlayerStorageValue(player1.uid,6026)
 
if queststatus1 == -1 then
 
demon1pos = {x=32915, y=32324, z=15}
 
doSummonCreature("Demodras", demon1pos)
 
nplayer1pos = {x=32915, y=32325, z=15}
 
doSendMagicEffect(player1pos,2)
 
doTeleportThing(player1.uid,nplayer1pos)
 
doSendMagicEffect(nplayer1pos,10)
 
doTransformItem(item.uid,item.itemid+0)
 
else
doPlayerSendCancel(cid,"Sorry, not possible.")
end
else
doPlayerSendCancel(cid,"Sorry, not possible.")
end
else
doPlayerSendCancel(cid,"Sorry, not possible.")
end
elseif item.itemid == 1945 then
if getPlayerAccess(cid) == 3 then
doTransformItem(item.uid,item.itemid-1)
else
doPlayerSendCancel(cid,"Sorry, not possible.")
end
end
end
return 1
end

 

recompensa.xml

 

function onUse(cid, item, frompos, item2, topos)

 
if item.uid == 6000 then
queststatus = getPlayerStorageValue(cid,6000)
if queststatus == -1 then
doPlayerSendTextMessage(cid,22,"Voçê ganhou uma soft boots.")
doPlayerAddItem(cid,2358,1)
setPlayerStorageValue(cid,6000,1)
else
doPlayerSendTextMessage(cid,22,"It is empty.")
end
elseif item.uid == 6001 then
queststatus = getPlayerStorageValue(cid,6000)
if queststatus == -1 then
doPlayerSendTextMessage(cid,22,"Voçê ganhou uma soft hat.")
doPlayerAddItem(cid,2323,1)
setPlayerStorageValue(cid,6000,1)
else
doPlayerSendTextMessage(cid,22,"It is empty.")
end
elseif item.uid == 6002 then
queststatus = getPlayerStorageValue(cid,6000)
if queststatus == -1 then
doPlayerSendTextMessage(cid,22,"Voçê ganhou uma magic staff.")
doPlayerAddItem(cid,2453,1)
setPlayerStorageValue(cid,6000,1)
else
doPlayerSendTextMessage(cid,22,"It is empty.")
 
end
else
return 0
end
 
return 1
end

 

Alguem pode resolver isso pra mim?

Agradeço.

Resolvido por xWhiteWolf

Ir para solução
  • Respostas 10
  • Visualizações 1.1k
  • Created
  • Última resposta

Top Posters In This Topic

Most Popular Posts

  • acho que agora vai, tem que ver se essa funçãozinha que eu coloquei vai servir em 7.6. Se der algum erro copia e cola oque aparece no console aqui function onUse(cid, item, frompos, item2, topos) 

Postado

a parte de não poder entrar se já tiver feito tá aqui: 
 

function onUse(cid, item, frompos, item2, topos) 
if item.uid == 6003 then
if item.itemid == 1945 then
player1pos = {x=32915, y=32328, z=15, stackpos=253}
player1 = getThingfromPos(player1pos)






if player1.itemid > 0 then


player1level = getPlayerLevel(player1.uid)


questlevel = 80


if player1level >= questlevel then


queststatus1 = getPlayerStorageValue(player1.uid,6000)


if queststatus1 == -1 then


demon1pos = {x=32915, y=32324, z=15}


doSummonCreature("Demodras", demon1pos)


nplayer1pos = {x=32915, y=32325, z=15}


doSendMagicEffect(player1pos,2)


doTeleportThing(player1.uid,nplayer1pos)


doSendMagicEffect(nplayer1pos,10)


doTransformItem(item.uid,item.itemid+0)


else
doPlayerSendCancel(cid,"You can't enter because you've already finished the arena.")
end
else
doPlayerSendCancel(cid,"Sorry, not possible.")
end
else
doPlayerSendCancel(cid,"Sorry, not possible.")
end
elseif item.itemid == 1945 then
if getPlayerAccess(cid) == 3 then
doTransformItem(item.uid,item.itemid-1)
else
doPlayerSendCancel(cid,"Sorry, not possible.")
end
end
end
return 1
end

agora a segunda parte não dá pra fazer simplesmente porque seu server é 7.6 mas dependendo do tamanho da sua arena dá pra improvisar uma gambiarra que TALVEZ dê certo, posta uma foto dela que eu tento fazer aqui dps

Editado por xWhiteWolf (veja o histórico de edições)

Todos os meus trabalhos importantes estão na seção "Sobre mim" no meu perfil; Dá uma passada lá!

"Há três caminhos para o fracasso: não ensinar o que se sabe, não praticar o que se ensina, e não perguntar o que se ignora." - São Beda

I7Pm6ih.png

(obg ao @Beeny por fazer essa linda sign <3)

Postado
  • Autor

Bom, agora já não é possivel fazer ela 2x. porem continua entrando 2 player na arena. Outra coisa, quando tem um player na arena matando o bixo e outro player entra, não aparece outro bixo. Só se o 1º bixo já estiver morto.

imagem da arena ta ae.

 

Htf.png

Editado por zuckah (veja o histórico de edições)

Postado

acho que agora vai, tem que ver se essa funçãozinha que eu coloquei vai servir em 7.6. Se der algum erro copia e cola oque aparece no console aqui

function onUse(cid, item, frompos, item2, topos) 
if item.uid == 6003 then
if item.itemid == 1945 then
local player1pos = {x=32915, y=32328, z=15, stackpos=253}
local player1 = getThingfromPos(player1pos)
local nplayer1pos = {x=32915, y=32325, z=15}




if player1.itemid > 0 then
local player1level = getPlayerLevel(player1.uid)
local questlevel = 80
if player1level >= questlevel then
local queststatus1 = getPlayerStorageValue(player1.uid,6000)
if queststatus1 == -1 then
local demon1pos = {x=32915, y=32324, z=15}
local mob = getThingfromPos(demon1pos).uid
local playa = getThingfromPos(nplayer1pos).uid
if mob ~= 0 or playa ~= 0 then
doPlayerSendCancel(cid,"Someone else is doing the quest right now.")
else
doSummonCreature("Demodras", demon1pos)
doSendMagicEffect(player1pos,2)
doTeleportThing(player1.uid,nplayer1pos)
doSendMagicEffect(nplayer1pos,10)
doTransformItem(item.uid,item.itemid+0)
end
else
doPlayerSendCancel(cid,"You can't enter because you've already finished the arena.")
end
else
doPlayerSendCancel(cid,"Sorry, not possible.")
end
else
doPlayerSendCancel(cid,"Sorry, not possible.")
end
elseif item.itemid == 1945 then
if getPlayerAccess(cid) == 3 then
doTransformItem(item.uid,item.itemid-1)
else
doPlayerSendCancel(cid,"Sorry, not possible.")
end
end
end
return 1
end

Editado por xWhiteWolf (veja o histórico de edições)

Todos os meus trabalhos importantes estão na seção "Sobre mim" no meu perfil; Dá uma passada lá!

"Há três caminhos para o fracasso: não ensinar o que se sabe, não praticar o que se ensina, e não perguntar o que se ignora." - São Beda

I7Pm6ih.png

(obg ao @Beeny por fazer essa linda sign <3)

Participe da conversa

Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.

Visitante
Responder

Quem Está Navegando 0

  • Nenhum usuário registrado visualizando esta página.

Estatísticas dos Fóruns

  • Tópicos 96.9k
  • Posts 519.7k

Informação Importante

Confirmação de Termo