Ir para conteúdo
  • 0

Pedido de alguns scripts basicos... coisa simples


Sertthoon

Pergunta

bom, pra começar acho que é importante eu dizer qual é o meu server

http://www.xtibia.co...86-editado-v20/

meu server é esse ai que como podem ver baixei do xtibia mesmo

bom, vamos a lista de pedidos

quando dar use no machado e clickar na arvore ganha madeira ItemID: [5901]. peço que seje facil de editar a arvore e o machado

e sem esquecer que a arvore tem que se regenerar (crescer denovo)

o basico futebol system, quando a bola vai no gol aparece TIME 1 0X1 TIME 2, pra todo o "publico" ver quanto ta o jogo

SE PUDEREM (pq esse tem cara de ser complicado)

o sistema de que quando vc encosta na bola vc "chuta" ela

esse deve ser facil mais como sou gordo preguiçoso vou pedir aqui

um npc que venda itens mas não por dinheiro e sim por outra moeda por ex: 5 dragon ham e vc compra uma mpa

 

acho que ta bom neh?

por favor me ajudem :p

Link para o comentário
Compartilhar em outros sites

Posts Recomendados

  • 0

cara, eu tentei esse, todas as profissoes nao funciona, aparece que nao tenho a profissao certa, mas com druid nao aparece nada, nem corta e nem aparece que a profissao ta errada

 

eu tenho esse script

 

local arvorescut = {

"2767",

"2768",

"2785",

"2786",

"2708"

}

local residuos = { "6219", }

local Madeira = { "1", "2", "3", "4", "5", "6", "0", }

 

function onUse(cid, item, frompos, item2, topos) -- By Lancellott @junior2b

 

 

if isInArray(arvorescut, item2.itemid) then

local messages = { "cuting", "Cortando", "tak tak tak", }

doPlayerSay(cid, messages[math.random(#messages)], TALKTYPE_ORANGE_1)

doSendMagicEffect(frompos,3)

doTransformItem(item2.uid, residuos[math.random(#residuos)])

doPlayerAddItem (cid, 5901,Madeira[math.random(#Madeira)])

else

doPlayerSendCancel (cid, "você não pode cortar nada que não seja uma árvore ou arbusto")

end

return true

end

 

 

 

mas ele remove a arvore e nao nasce outra no lugar, se conseguirem resolver

Link para o comentário
Compartilhar em outros sites

  • 0
local time = 60
local arvorescut = {
"2767",
"2768",
"2785",
"2786",
"2708"
}
local residuos = { "6219", }
local Madeira = { "1", "2", "3", "4", "5", "6", "0", }

function onUse(cid, item, frompos, item2, topos) -- By Lancellott @junior2b


if isInArray(arvorescut, item2.itemid) then
local messages = { "cuting", "Cortando", "tak tak tak", }
doPlayerSay(cid, messages[math.random(#messages)], TALKTYPE_ORANGE_1)
doSendMagicEffect(frompos,3)
doTransformItem(item2.uid, residuos[math.random(#residuos)])
doPlayerAddItem (cid, 5901,Madeira[math.random(#Madeira)])
else
doPlayerSendCancel (cid, "você não pode cortar nada que não seja uma árvore ou arbusto")
end
if
addEvent(doCreateItem, time*60*1000, item2.itemid, 1, getThingPos(item2.uid))
return true
end

Editado por Gears
Link para o comentário
Compartilhar em outros sites

  • 0

Gears, não se usa aspas em numbers, apenas em strings :)

Tente assim:

 

http://pastebin.com/Ybw0TCKf

eu testei assim,

quando uso o serrote na arvore aparece "cortando" "tec tec tec"

quando tento em outra coisa aparece

22:47 You only can cut threes!

normal, SO QUE ele nao ta cortando as arvores

só aparece as coisa, mais corta mesmo nao corta

 

local time = 60
local arvorescut = {
"2767",
"2768",
"2785",
"2786",
"2708"
}
local residuos = { "6219", }
local Madeira = { "1", "2", "3", "4", "5", "6", "0", }

function onUse(cid, item, frompos, item2, topos) -- By Lancellott @junior2b


if isInArray(arvorescut, item2.itemid) then
local messages = { "cuting", "Cortando", "tak tak tak", }
doPlayerSay(cid, messages[math.random(#messages)], TALKTYPE_ORANGE_1)
doSendMagicEffect(frompos,3)
doTransformItem(item2.uid, residuos[math.random(#residuos)])
doPlayerAddItem (cid, 5901,Madeira[math.random(#Madeira)])
else
doPlayerSendCancel (cid, "você não pode cortar nada que não seja uma árvore ou arbusto")
end
if
addEvent(doCreateItem, time*60*1000, item2.itemid, 1, getThingPos(item2.uid))
return true
end

com o seu, ele aparece You cannot use this object

como se nao tivesse script nenhum

é tenso pra faze um script pegar no meu ot kkkkkkkkkk

Link para o comentário
Compartilhar em outros sites

  • 0

Bom amigo, eu fiz uma coisa super rapida, só pra testar a lógica.

Testa ai e me diz o que acontece.

 


c = {
arvores = {2134, 2143, 1214},
cut = 5,
resto = {1241, 2315},
msgs = {"Cortando", "Cutting"}
madeira = {2148, 2160}
effect = {30, 21}
}

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

for _, i in ipairs(c.arvores) do
a = getItemNameById(i)
end

if not isInArray(c.arvores, itemEx.uid) then
doPlayerSendCancel(cid, "Você so pode cortar as certas arvores : "..a)
return true
end


function cut()
if c.cut > 5 then
doSendMagicEffect(topos, c.effect[math.random(1, #effect)])
doSendAnimatedText(topos, c.msgs[math.random(1, #msgs)], math.random(1, 20))
c.cut = c.cut + 1
else
doPlayerAddItem(cid, c.madeira[math.random(1, #madeira)])
doTransformItem(itemEx.uid, c.resto[math.random(1, #resto)])
c.cut = 0
break
end
addEvent(cut, 1000)
return true
end

cut()
return true
end

 

@Roksas, se poder me passar , o comando que usa para ficar com o script identado. (;

E também ve se melhora a sua identaçao que está orrivel '-'

Editado por OrochiElf
Link para o comentário
Compartilhar em outros sites

  • 0

Bom amigo, eu fiz uma coisa super rapida, só pra testar a lógica.

Testa ai e me diz o que acontece.

 


c = {
arvores = {2134, 2143, 1214},
cut = 5,
resto = {1241, 2315},
msgs = {"Cortando", "Cutting"}
madeira = {2148, 2160}
effect = {30, 21}
}

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

for _, i in ipairs(c.arvores) do
a = getItemNameById(i)
end

if not isInArray(c.arvores, itemEx.uid) then
doPlayerSendCancel(cid, "Você so pode cortar as certas arvores : "..a)
return true
end


function cut()
if c.cut > 5 then
doSendMagicEffect(topos, c.effect[math.random(1, #effect)])
doSendAnimatedText(topos, c.msgs[math.random(1, #msgs)], math.random(1, 20))
c.cut = c.cut + 1
else
doPlayerAddItem(cid, c.madeira[math.random(1, #madeira)])
doTransformItem(itemEx.uid, c.resto[math.random(1, #resto)])
c.cut = 0
break
end
addEvent(cut, 1000)
return true
end

cut()
return true
end

 

@Roksas, se poder me passar , o comando que usa para ficar com o script identado. (;

E também ve se melhora a sua identaçao que está orrivel '-'

testei o seu tmb e nao funcionou =[[[[[

n sei pq mais é Ph0d@ de pegar algum script no meu ot

ele simplismete nao funcionou (you cannot use this object.)

Link para o comentário
Compartilhar em outros sites

  • 0


function onUse(cid, item, fromPosition, itemEx, toPosition)

CreatureEventChecker = function(event, ...) -- Colex
if isCreature(arg[1]) or isCreature(arg[3]) or isCreature(arg[4]) then
event(unpack(arg))
end
end

CreatureEvent = function(event, delay, ...) -- Colex
addEvent(CreatureEventChecker, delay, event, unpack(arg))
end


local txt = {"Crush", "Creeck", "Pihn", "Bosh"}
local effects = {84}
local tempo = 5

local rocks = {
[2712] = {
rockProvides = {
{rew = 2450, count = 1}},
chance = 40},

[8633] = {
rockProvides = {
{rew = 8306, count = 1}},
chance = 50},

[8740] = {
rockProvides = {
{rew = 2143, count = 1},
{rew = 2145, count = 1},
{rew = 5889, count = 1},
{rew = 1294, count = 1}},
chance = 100},


[5750]= {
rockProvides = {
{rew = 2225, count = 1},
{rew = 5880, count = 1},
{rew = 5888, count = 1}},
chance = 10},

[8634] = {
rockProvides = {
{rew = 10169, count = 1},
{rew = 2177, count = 1},
{rew = 2158, count = 1}},
chance = 10},

[8635] = {
rockProvides = {
{rew = 8303, count = 1},
{rew = 2156, count = 1},
{rew = 2147, count = 1}},
chance = 10},

[8636] = {
rockProvides = {
{rew = 2149, count = 1},
{rew = 2155, count = 1}},
chance = 10}

}

-- Blocos de encurtamento --
rocks[5867] = rocks[5866]
rocks[5868] = rocks[5866]
rocks[5920] = rocks[5619]
rocks[5921] = rocks[5619]
rocks[5922] = rocks[5619]
rocks[5923] = rocks[5619]
rocks[5924] = rocks[5619]
rocks[5622] = rocks[5619]
rocks[5623] = rocks[5619]
rocks[5751] = rocks[5750]
rocks[5752] = rocks[5750]
rocks[5753] = rocks[5750]
rocks[5754] = rocks[5750]
rocks[8741] = rocks[8740]
rocks[8742] = rocks[8740]
rocks[8743] = rocks[8740]
rocks[8749] = rocks[8748]
rocks[8750] = rocks[8748]
rocks[8751] = rocks[8748]
-------- fim blocos -------

if itemEx.itemid == 2450 then
if math.random(1, 100) >= 70 then
doTransformItem(itemEx.uid, 1423)
doDecayItem(itemEx.uid)
else
doPlayerSendCancel(cid, "Fail")
return true
end
end

if rocks[itemEx.itemid] then

local provides = rocks[itemEx.itemid].rockProvides
local itemToGive = provides[math.random(#provides)]

function o(cid)
if getPlayerStorageValue(cid, 50030) == 1 then
setPlayerStorageValue(cid, 50030, 2)
doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Quest log as been update")
end
end

if getPlayerStorageValue(cid, 21441) >= 1 then
doPlayerSendCancel(cid, "Voce so pode extrair materiais um de cada vez.")
return true
end

if not exhaustion.check(cid, 65866) then
exhaustion.make(cid, 65866, tempo)
doCreatureSetNoMove(cid, 1)
setPlayerStorageValue(cid, 21441, 1)
for i = 1, tempo do
if i ~= tempo then
CreatureEvent(doSendMagicEffect, 1000*i, toPosition, effects[math.random(#effects)], cid)
CreatureEvent(doSendAnimatedText, 1000*i, toPosition, txt[math.random(#txt)], math.random(255), cid)
else
if math.random(100) <= rocks[itemEx.itemid].chance then
CreatureEvent(doCreatureSetNoMove, 1000*tempo, cid, 0)
CreatureEvent(doPlayerAddItem, 1000*tempo, cid, itemToGive.rew,itemToGive.count)
CreatureEvent(doPlayerSendTextMessage, 1000*tempo, cid, 25, "Você encontrou um ".. getItemNameById(itemToGive.rew) ..".")
CreatureEvent(setPlayerStorageValue, 1000*tempo, cid, 21441, -1)
CreatureEvent(o, 1000*tempo, cid)
else
CreatureEvent(doPlayerSendCancel, 1000*tempo, cid, "Você não conseguiu extrair nada.")
CreatureEvent(doCreatureSetNoMove, 1000*tempo, cid, 0)
CreatureEvent(setPlayerStorageValue, 1000*tempo, cid, 21441, -1)
end
end
end
else
doPlayerSendCancel(cid, "Você só pode escavar uma rocha por vez.")
end

elseif(itemEx.uid <= 65535 or itemEx.actionid > 0) and (itemEx.itemid == 354 or itemEx.itemid == 355) then
doTransformItem(itemEx.uid, 392)
doDecayItem(itemEx.uid)
doSendMagicEffect(toPosition, CONST_ME_POFF)
else
doPlayerSendCancel(cid, "Sorry not possible.")
end
return true
end

 

Usa esse (;

Abrços

Editado por OrochiElf
Link para o comentário
Compartilhar em outros sites

  • 0

Cara, que versão é seu server?

O meu funciona certinho: Woodcutting

parabens, o seu funcionou obviamente rep +

e tmb rep + para todos os outros que ajudaram tmb

só uma pergunta

eu vi um erro, a arvore cresce denovo sim, mas fica o "cotoco" da outra arvore por cima, então nao consigo usar o serrote novamente

como edito pra quando a arvore crescer, aquele cotoco sumir?

ah, e como edito para que todas as profissoes consigam cortar a arvore?

Editado por sertthoon
Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...