Ir para conteúdo
  • Cadastre-se

Posts Recomendados

Como funciona?

Bounty System é um script que visa o pvp.

Um player diz o comando /bounty [prize],[nick]. e a partir daí o player que foi colocado em [nick] passa a ser procurado, e o primeiro a matá-lo ganha uma recompensa.

Vamos lá...

Execute os comandos em seu PhpMyAdmin:

CREATE TABLE IF NOT EXISTS `bounty_hunters` (

`id` int(11) NOT NULL auto_increment,

`fp_id` int(11) NOT NULL,

`sp_id` int(11) NOT NULL,

`k_id` int(11) NOT NULL,

`added` int(15) NOT NULL,

`prize` bigint(20) NOT NULL,

`killed` int(11) NOT NULL,

`kill_time` int(15) NOT NULL,

PRIMARY KEY (`id`)

) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;

Vá em data/creaturescripts/scripts/,e crie um arquivo bounty.lua e cole isto:

function onKill(cid, target)

if isPlayer(target) == TRUE then

pid = cid

pid2 = getPlayerGUID(target)

local result_plr = db.getResult("SELECT * FROM `bounty_hunters` WHERE `sp_id` = "..pid2.." AND `killed` = 0;")

if(result_plr:getID() ~= -1) then

prize = tonumber(result_plr:getDataInt("prize"))

bid = tonumber(result_plr:getDataInt("id"))

result_plr:free()

else

prize = 0

bid = 0

end

if (bid ~= 0 and prize ~= 0 and not(getTileInfo(getCreaturePosition(cid)).pvp)) then

db.executeQuery("UPDATE `bounty_hunters` SET `killed` = 1, `k_id`="..getPlayerGUID(cid)..", `kill_time` = " .. os.time() .. " WHERE `id` = "..bid..";")

doPlayerAddMoney(cid,prize)

doPlayerSendTextMessage(cid,MESSAGE_STATUS_CONSOLE_ORANGE,"[bounty System]: You killed "..getPlayerName(target).."! You gained the bounty that was put on his/her head!")

doSendMagicEffect(getCreaturePosition(cid), 27)

doBroadcastMessage("[bounty System]: "..getPlayerName(cid).." killed "..getPlayerName(target).." and gained the bounty! ("..prize.." gold)", MESSAGE_EVENT_ADVANCE)

end

end return TRUE

end

Vá em data/creaturescripts/scripts/ e coloque isto em login.lua :

registerCreatureEvent(cid, "Bounty")

Vá em

data/talkactions/scripts/ e crie um arquivo tbounty.lua

function onSay(cid, words, param)

if(param == "") then

doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "[bounty System]: Usage: \"!bounty [gold],[nick]\" where gold is at least 10000.")

return TRUE

end

local t = string.explode(param, ",")

if(not t[2]) then

doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "[bounty System]: Usage: \"!bounty [gold],[nick]\" where gold is at least 10000.")

return TRUE

end

local sp_id = getPlayerGUIDByName(t[2])

if sp_id == nil then

doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "[bounty System]: You cant put a bounty on imaginary people, your target doesn't exist.")

return TRUE

end local result_plr = db.getResult("SELECT * FROM `bounty_hunters` WHERE `sp_id` = "..sp_id.." AND `killed` = 0;")

if(result_plr:getID() ~= -1) then

is = tonumber(result_plr:getDataInt("sp_id"))

result_plr:free()

else

is = 0

end

prize = tonumber(t[1])

if(prize == nil or prize < 10000) then

doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "[bounty System]: Usage: \"!bounty [gold],[nick]\" where gold is at least 10000.")

return TRUE

end

if(prize >= 999999999) then

doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "[bounty System]: Sorry, bounty limit is at 999.9 million gold!")

return TRUE

end if is ~= 0 then

doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_RED, "[bounty System]: "..t[2].." has already got a bounty on his/her head.")

return TRUE

end

if doPlayerRemoveMoney(cid, prize) == TRUE then

db.executeQuery("INSERT INTO `bounty_hunters` VALUES (NULL,"..getPlayerGUID(cid)..","..sp_id..",0," .. os.time() .. ","..prize..",0,0);")

doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_RED, "[bounty System]: Bounty on "..t[2].."s head has been added successfully!")

doBroadcastMessage("[bounty System]: A bounty of "..prize.." gold for "..t[2].."s head has been submitted by "..getPlayerName(cid)..". The first one to kill "..t[2].." will get the gold!", MESSAGE_EVENT_ADVANCE)

else

doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "[bounty System]: You dont have enough gold!")

end

return 1

end

Vá em data/talkactions/talkactions.xml e coloque:

<talkaction words="/bounty;!bounty;!hunt;/hunt" script="tbounty.lua" />

Pronto!!!

Demonstração:

bountyc1.png

successl.png

Página (Php)

<?

mysql_connect("localhost","user","password");

mysql_select_db("database");

$main_content .= '<P ALIGN=CENTER>

<br>

<FONT SIZE=5 COLOR=#CFF00C>

How to use...

</FONT>

<br>

<br>

<FONT SIZE=2 COLOR=#CFF00C>

* !hunt [prize],[nick] :

<FONT SIZE=1 COLOR=#FCC33F>

Wysyla ogloszenie o huncie dla postaci. Cena w tysiacach.<br>

Przyklad: !hunt 100,Infinity

</FONT><br>

</FONT>

</P>

<br>

<br>

<center>

<h1>

Bounty Hunters

</h1>

</center>

<TABLE BORDER=0 CELLSPACING=1 CELLPADDING=4 WIDTH=100%>

<TR BGCOLOR="#505050">

<TD CLASS=white width=30%>

<center><B>Zlecil</B></center>

</TD>

<TD CLASS=white width=30%>

<center><B>Nagroda</B></center>

</TD>

<TD CLASS=white width=30%>

<center><B>Ofiara</B></center>

</TD>

<TD CLASS=white width=10%>

<center><B>Zabity przez</B></center>

</TD>

</TR>';

$inv = mysql_query("SELECT * FROM `bounty_hunters` ORDER BY `added` DESC");

$num = 0;

$color=$config['site']['darkborder'];

while($tab = mysql_fetch_array($inv)){

if($num%2 == 0){$color=$config['site']['darkborder'];}else{$color=$config['site']['lightborder'];}

$pid = $tab['fp_id'];

$sid = $tab['sp_id'];

$kid = $tab['k_id'];

$killed = $tab['killed'];

$prize = $tab['prize']*1000;

if($killed == 0){

$kill = '<font color="red">Nobody!</font>';

}else{

$k = mysql_query("SELECT * FROM `players` WHERE `id` = ".$kid."");

$k1 = mysql_fetch_array($k);

$kill_name = $k1['name'];

$kill = '<a href="index.php?subtopic=characters&name='.$kill_name.'">'.$kill_name.'</a>';[']

}

$f = mysql_query("SELECT * FROM `players` WHERE `id` = ".$pid."");

$f1 = mysql_fetch_array($f);

$s = mysql_query("SELECT * FROM `players` WHERE `id` = ".$sid."");

$s1 = mysql_fetch_array($s);

$fn = $f1['name'];

$sn = $s1['name'];

$main_content .= '

<TR BGCOLOR="'.$color.'">

<TD>

<center>

<b>

<a href="index.php?subtopic=characters&name='.$fn.'">'.$fn.'</a>[']

</b>

</center>

</TD>

<TD>

<center>

<b>

'.$prize.' gp

</b>

</center>

</TD>

<TD>

<center>

<b>

<a href="index.php?subtopic=characters&name='.$sn.'">'.$sn.'</a>[']

</b>

</center>

</TD>

<TD>

<center>

<b>

'.$kill.'

</b>

</center>

</TD>

</TR>';

$num++;

}

if($num == 0){

$main_content.='<TR BGCOLOR="'.$color.'">

<TD colspan=4>

<center>

Currently there are not any bounty hunter offer.

</center>

</TD>

</TR>';

}

$main_content .=</TABLE><div align="right">Copyright &copy; <a href="http://otibia.net">o...a>.</div>&#39;;

?>

Créditos: Pheenix e Eu ;)

Link para o post
Compartilhar em outros sites
Visitante
Este tópico está impedido de receber novos posts.
  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.

×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo