Eai galera,
Vou postar para vocês o script, Tibia Cs, onde você compra armas com mesmo nome das do cs, Mas para poder acertar tiros deve estar frente ao target desejado!
Dexa de enrolação, vamos ao que interessa.
Primeiro Vocês abrem a pasta Data/talkactions e abre o arquivo "Talkactions.xml" e adicionem a tag em baixo do titulo <!-- Players --> assim como as outras tags estão lá...
<talkaction log="yes" words="!atirar;!b;!b1;!b2;!b3;!b4;!b5;!g;!b11;!b12;!b13;!b14;!b15;!b21;!b22;!b31;!b32;!b33;!b34;!b41;!b42;!b43;!b44;!b45;!b46;!b51;!arma" event="script" value="tiros.lua"/>
Depois abra a pasta Data/talkactions/scripts e crie um arquivo chamado tiros.lua lembrando arquivo.lua e cole o script seguinte dentro do arquivo.lua...
function buy(cid,numero)
return getPlayerStorageValue(cid,numero)
end
function onSay(cid,words,param)
-- [nao mexa] = {distancia maxima,velocidade,delay entre os tiros, "msg animada" , math.random(min,max)}
local arsenal = {
[13251] = {4,200,2,"no Pé",math.random(1,8),"9X19MM SIDEARM"},
[13252] = {4,215,2,"no Braço",math.random(1,10),"KM .45 TACTICAL"},
[13253] = {4,215,2,"no Braço",math.random(1,10),"228 COMPACT "},
[13254] = {5,170,2,"na Perna",math.random(15,35),"NIGHT WALK .50C"},
[13255] = {5,175,2,"na Perna",math.random(15,35),"ES FIVE-SEVEN"},
[13261] = {6,220,5,"UGHHH",math.random(23,35),"LEONE 12 GALGUE SUPER"},
[13262] = {6,220,3,"UGHHH",math.random(15,30),"LEONE IG1265 AUTO"},
[13271] = {7,175,2,"no Pé",math.random(1,8),"SCHMIDT MACHINE"},
[13272] = {7,170,2,"no Braço",math.random(1,10),"KM SUB-MACHINE GUN"},
[13273] = {7,170,2,"no Pé",math.random(1,8),"KM UMP45"},
[13274] = {7,160,2,"no Braço",math.random(1,10),"ES C90"},
[13281] = {5,180,1.5,"no Peito",math.random(25,65),"CLARION 5.56"},
[13282] = {7,186,2,"no Peito",math.random(25,65),"SCHMIDT SCOUT"},
[13283] = {6,170,1.5,"Nut Shot",math.random(25,75),"MAVERICK M4A1"},
[13284] = {5,160,1.5,"no Peito",math.random(25,65),"BULLPUP"},
[13285] = {6,170,2,"Nut Shot",math.random(25,75),"KRIEG 550 COMMANDO"},
[13286] = {8,145,3,"Head Shot",math.random(80,100),"MAGNUM SNIPER RIFLE"},
[13291] = {7,165,8,"Errou",0,"M249"},
}
local armamento = arsenal[getPlayerStorageValue(cid,13245)]
if words == "!b" then
doPlayerPopupFYI(cid, "Sell:" ..
"\n1 - PISTOLS" ..
"\n2 - SHOTGUNS" ..
"\n3 - SMG" ..
"\n4 - RIFLES" ..
"\n5 - MACHINE GUNS" ..
"\n" ..
"\nSay '!b + number' -> example:" ..
"\n!b1 for open PISTOLS Sellers." )
end
if words == "!b1" then -- PISTOLS
doPlayerPopupFYI(cid, "Sell:" ..
"\n11 - 9X19MM SIDEARM --- 4000 GOLD COINS" ..
"\n12 - KM .45 TACTICAL --- 5000 GOLD COINS" ..
"\n13 - 228 COMPACT --- 6000 GOLD COINS" ..
"\n14 - NIGHT WALK .50C --- 6500 GOLD COINS" ..
"\n15 - ES FIVE-SEVEN --- 7500 GOLD COINS" ..
"\n" ..
"\nSay '!b + number' -> example:" ..
"\n!b14 for buy NIGHT WALK .50C (DESERT EAGLE)." )
end
if words == "!b2" then -- SHOTGUNS
doPlayerPopupFYI(cid, "Sell:" ..
"\n21 - LEONE 12 GALGUE SUPER --- 17000 GOLD COINS" ..
"\n22 - LEONE IG1265 AUTO --- 30000 GOLD COINS" ..
"\n" ..
"\nSay '!b + number' -> example:" ..
"\n!b21 for buy LEONE 12 GALGUE SUPER." )
end
if words == "!b3" then -- SMG
doPlayerPopupFYI(cid, "Sell:" ..
"\n31 - SCHMIDT MACHINE --- 12500 GOLD COINS" ..
"\n32 - KM SUB-MACHINE GUN --- 15000 GOLD COINS" ..
"\n33 - KM UMP45 --- 17000 GOLD COINS" ..
"\n34 - ES C90 --- 23500 GOLD COINS" ..
"\n" ..
"\nSay '!b + number' -> example:" ..
"\n!b34 for buy ES C90." )
end
if words == "!b4" then -- RILES
doPlayerPopupFYI(cid, "Sell:" ..
"\n41 - CLARION 5.56 --- 22500 GOLD COINS" ..
"\n42 - SCHMIDT SCOUT --- 27500 GOLD COINS" ..
"\n43 - MAVERICK M4A1 --- 31000 GOLD COINS" ..
"\n44 - BULLPUP --- 35000 GOLD COINS" ..
"\n45 - KRIEG 550 COMMANDO --- 42000 GOLD COINS" ..
"\n46 - MAGNUM SNIPER RIFLE --- 47500 GOLD COINS" ..
"\n" ..
"\nSay '!b + number' -> example:" ..
"\n!b46 for buy MAGNUM SNIPER RIFLE(AWP)." )
end
if words == "!b5" then -- RILES
doPlayerPopupFYI(cid, "Sell:" ..
"\n51 - M249 --- 57500 GOLD COINS" ..
"\n" ..
"\nSay '!b + number' -> example:" ..
"\n!b51 for buy M249(RAMBO)." )
end
local comprar = {
["!b11"] = {13251,4000},
["!b12"] = {13252,5000},
["!b13"] = {13253,6000},
["!b14"] = {13254,6500},
["!b15"] = {13255,7500},
["!b21"] = {13261,17000},
["!b22"] = {13262,30000},
["!b31"] = {13271,12500},
["!b32"] = {13272,15000},
["!b33"] = {13273,17000},
["!b34"] = {13274,23500},
["!b41"] = {13281,22500},
["!b42"] = {13282,27500},
["!b43"] = {13283,31000},
["!b44"] = {13284,35000},
["!b45"] = {13285,42000},
["!b46"] = {13286,47500},
["!b51"] = {13291,57500},
}
local buyarmas = comprar[words]
if buyarmas ~= nil then
if buy(cid,13251) >= 1 or buy(cid,13252) >= 1 or buy(cid,13253) >= 1 or buy(cid,13254) >= 1 or buy(cid,13255) >= 1
or buy(cid,13261) >= 1 or buy(cid,13262) >= 1
or buy(cid,13271) >= 1 or buy(cid,13272) >= 1 or buy(cid,13273) >= 1 or buy(cid,13274) >= 1
or buy(cid,13281) >= 1 or buy(cid,13282) >= 1 or buy(cid,13283) >= 1 or buy(cid,13284) >= 1 or buy(cid,13285) >= 1 or buy(cid,13286) >= 1
or buy(cid,13291) >= 1 then
return doPlayerSendTextMessage(cid,MESSAGE_STATUS_CONSOLE_BLUE,"Voce nao pode comprar mais armas estando com uma. digite !g para se livrar de sua arma.")
end
if doPlayerRemoveMoney(cid, buyarmas[1]) == FALSE then
return doPlayerSendTextMessage(cid,MESSAGE_STATUS_CONSOLE_BLUE,"Você tem que ter "..buyarmas[2].." gold coins.")
end
setPlayerStorageValue(cid,buyarmas[1],1)
-- teste --
setPlayerStorageValue(cid,13245,buyarmas[1])
doPlayerSendTextMessage(cid,MESSAGE_STATUS_CONSOLE_BLUE,"Você comprou uma arma.")
end
if words == "!g" then
if buy(cid,13251) >= 1 or buy(cid,13252) >= 1 or buy(cid,13253) >= 1 or buy(cid,13254) >= 1 or buy(cid,13255) >= 1
or buy(cid,13261) >= 1 or buy(cid,13262) >= 1
or buy(cid,13271) >= 1 or buy(cid,13272) >= 1 or buy(cid,13273) >= 1 or buy(cid,13274) >= 1
or buy(cid,13281) >= 1 or buy(cid,13282) >= 1 or buy(cid,13283) >= 1 or buy(cid,13284) >= 1 or buy(cid,13285) >= 1 or buy(cid,13286) >= 1
or buy(cid,13291) >= 1 then
setPlayerStorageValue(cid,13251,-1)
setPlayerStorageValue(cid,13252,-1)
setPlayerStorageValue(cid,13253,-1)
setPlayerStorageValue(cid,13254,-1)
setPlayerStorageValue(cid,13255,-1)
setPlayerStorageValue(cid,13261,-1)
setPlayerStorageValue(cid,13262,-1)
setPlayerStorageValue(cid,13271,-1)
setPlayerStorageValue(cid,13272,-1)
setPlayerStorageValue(cid,13273,-1)
setPlayerStorageValue(cid,13274,-1)
setPlayerStorageValue(cid,13281,-1)
setPlayerStorageValue(cid,13282,-1)
setPlayerStorageValue(cid,13283,-1)
setPlayerStorageValue(cid,13284,-1)
setPlayerStorageValue(cid,13285,-1)
setPlayerStorageValue(cid,13286,-1)
setPlayerStorageValue(cid,13291,-1)
setPlayerStorageValue(cid,13245,-1)
doPlayerSendTextMessage(cid,MESSAGE_STATUS_CONSOLE_BLUE,"Você se livrou de sua arma.")
else
return doPlayerSendTextMessage(cid,MESSAGE_STATUS_CONSOLE_BLUE,"Você não tinha arma.")
end
end
if words == "!atirar" then
local storage = 13243
if armamento == nil then
return doPlayerSendCancel(cid,"Voce precisa comprar uma arma, digite !b")
end
if getTilePzInfo(getCreaturePosition(cid)) == TRUE then
return doPlayerSendCancel(cid,"Voce só pode atirar fora da protection zone.")
end
if os.time() - getPlayerStorageValue(cid,storage) <= armamento[3] then
return doSendAnimatedText(getCreaturePosition(cid), "Reloading", math.random(1,255))
end
setPlayerStorageValue(cid,storage,os.time())
-- SCRIPT BY DRAKY LUCAS --
-- [de 1 a 10] = {"fala",math.random(dano minimo,dano maximo) em percentagens},
local falas = {
[1] = {"Head Shot",math.random(80,100)},
[2] = {"Nut Shot",math.random(25,35)},
[3] = {"na Perna",math.random(10,25)},
[4] = {"no Peito",math.random(50,75)},
[5] = {"no Pé",math.random(1,10)},
}
local i = 1
local tempo = armamento[2]
local max = armamento[1] -- numero de repetiçoes
repeat
local direction = getPlayerLookDir(cid)
position = getCreaturePosition(cid)
if(direction == NORTH) then
position.y = position.y - (i/tempo)
elseif(direction == SOUTH) then
position.y = position.y + (i/tempo) + 1
elseif(direction == WEST) then
position.x = position.x - (i/tempo)
elseif(direction == EAST) then
position.x = position.x + (i/tempo) + 1
end
position.stackpos = 253
local pos = {x = position.x,y = position.y, z = position.z}
pos.stackpos = 253
if getTilePzInfo(pos) == TRUE then
break
end
if getThingfromPos(pos).itemid > 0 then
local fala = falas[math.random(1,10)]
if fala == nil then
if addEvent(isPlayer,i,getThingfromPos(pos).uid) then
addEvent(doCreatureAddHealth,i,getThingfromPos(pos).uid,-(getCreatureMaxHealth(getThingfromPos(pos).uid)/100)* armamento[5])
addEvent(doSendMagicEffect,i,pos,64)
addEvent(doSendAnimatedText,i,pos, armamento[4], math.random(1,255))
break
end
end
if addEvent(isPlayer,i,getThingfromPos(pos).uid) then
addEvent(doCreatureAddHealth,i,getThingfromPos(pos).uid,-(getCreatureMaxHealth(getThingfromPos(pos).uid)/100)* fala[2])
addEvent(doSendMagicEffect,i,pos,64)
addEvent(doSendAnimatedText,i,pos, fala[1], math.random(1,255))
break
end
break
end
addEvent(doSendMagicEffect,i,pos, 5)
i = i + tempo
until i >= tempo * max
end -- do if word == atirar..
if words == "!arma" then
if getPlayerStorageValue(cid,13245) <= 0 then
return doPlayerSendTextMessage(cid,25,"Você não tem arma.")
end
doPlayerSendTextMessage(cid,25,"Você está usando uma "..armamento[6]..".")
end
return TRUE
end
Apos dizer !b
Apos dizer !b+numero da arma que deseja, "Lembrando que as opções de armas, são apenas 5 = exemplo = !b1, !b2, !b3, !b4, !b5...Cada uma dessas tags, tem as armas numeradas e seguidas por ordem, ex: !b1= Pistolas e assim por diante!!
Apos dizer !atirar, esse tiro foi de sniper, Magnum sniper rifle -> numero 46.
Apos dizer !atirar, esse tiro foi com a arma que dizem do rambo, M249 -> numero 51.
PARA VOCÊS VEREM AS IMAGENS MELHOR, DÊ UM CLICK NELAS!!!
é isso ae galera, meu primeiro post ae pra vocês, Brigado ae !!
Post Criado por mim, não copiei nada de ninguem, até por que sou contra Plagio!!
Creditos ao criador do script = DRAKY LUCAS
COMENTEM AE !!
é isso ae galera, se gostou por que não dar um Rep+
Valeu Galerinha, até a Proxima!!