Re: [Download] Lista de NPC's ( Atualizado 18/07/2009 )
|
|
Olá Amigo Bom Dia.
Primeiramente Seja Bem Vindo, use esta versão que é mais nova e já vem com a tabela automática, somente instale e rode o servidor que ele cria a tabela sql automaticamente
desculpa a demora grande abraço e dúvidas poste la na seção de dúvidas
Código:
//**************************************************************************//
//* Um Nome... Um Reinado... Uma Reputação... *//
//**************************************************************************//
//* *//
//* *//
//* \|||/ *//
//* .-.________ (o o) ________.-. *//
//* ----/ \_)_______) +--oooO--(_)------------+ (_______(_/ \---- *//
//* ( ()___) | | (___() ) *//
//* ()__) | * NOSYEL * | (__() *//
//* ----\___()_) | | (_()___/----- *//
//* +------------Ooo--------+ *//
//* |__|__| *//
//* || || *//
//* ________ooO Ooo________ *//
//* *//
//**************************************************************************//
//* Invejado Por Muitos, Copiado Por Alguns, e Admirado Por Todos!!!... *//
//**************************************************************************//
//===== Cronus Script ========================================
//= Doações
//===== Por: =================================================
//= Nosyel
//===== Atual Versão: ========================================
//= 2.0
//===== Compatível com: ======================================
//= eAthena e Cronus
//===== Descrição: ===========================================
//= Players: Ver seus pontos, Ver a loja de itens.
//= Administrador: Adicionar pontos, Trocar pontos e Remover Pontos.
//===== Comentários Adicionais: ==============================
//= 1.0 Removido algumas funções desnecessárias.
//= 2.0 Shop reformulado :].
//= Adicionado parte de "CONFIGURAÇÕES" para fácil edição do mesmo.
//= Por favor mantenha os créditos ^^.
//============================================================
prontera,146,155,6 script Doações 70,{
//=============CONFIGURAÇÕES==================================
set .@name$, "[^FF8040 Doações ^000000]";
set .@gmlvl, 99; //Nível para accesar o menu "Mudar pontos de doação"
set .@pname$, "Créditos"; //Nome dos pontos de doação,você pode adicionar um espaço no começo para ter "100 Créditos" como também "100Créditos"
set .@mpoint, 10000; //O máximo de pontos que você pode adicionar ou retirar
set .@pontos, 10000000; // 1kk = 1 Crédito, 10kk = 10 Créditos, etc, caso altere o valor, teste quanto o jogador terá que gastar para comprar os créditos :].
//============================================================
//Início do NPC
mes .@name$;
mes "O que você gostaria de fazer?";
set .@menu$, "Ver meus Créditos:Ver os items de doação";
if(getgmlevel() >= .@gmlvl){
set .@menu$, .@menu$+":Adicionar uma nova doação:Trocar pontos de doação de um jogador:Remover pontos de doação de um jogador";
} else{
set .@menu$, .@menu$+":::";
}
switch(select(.@menu$)){
Case 1:
mes "Você tem " + #CASHPOINTS + .@pname$;
break;
Case 2:
mes "Você deseja realmente ver a loja de doações?";
next;
menu "Claro",sim,"Não, obrigado",-;
mes "Ok, volte sempre.";
close;
sim:
mes "Ok, eu tenho os seguintes itens a disposição, de uma olhada";
close2;
callcashshop "Donate",1;
end;
Case 3:
mes "Nome do personagem:";
input .@dname$;
mes .@dname$;
mes "Pontos de doação:";
input .@points;
if(.@points < 1 || .@points > .@mpoint){
mes "Você tem que digitar um valor entre 1 e " + .@mpoint;
close;
}
mes .@points;
next;
if(select("Esses valores estão corretos","Voltar") == 2){
mes .@name$;
mes "Tente Novamente";
close;
}
if(query_sql("SELECT `account_id` FROM `char` WHERE `name` = '" + escape_sql(.@dname$) + "'",.@accid) == 0){
mes .@name$;
mes "Esse jogador não existe";
close;
}
if(isloggedin(.@accid) == 1){
set .@oldrid, getcharid(3);
attachrid(.@accid);
set #CASHPOINTS, #CASHPOINTS+.@points;
query_sql "INSERT INTO `donations` (`acc_id`, `points`, `collected`, `time_added`) VALUES('" + .@accid + "', '" + .@points + "', 'yes', '" + gettimestr("%d/%m %Y - %H:%M:%S",25) + "')";
dispbottom "Seus pontos de doação foram adicionados com sucesso";
dispbottom "Seus novos pontos são " + #CASHPOINTS + .@pname$;
attachrid(.@oldrid);
mes .@name$;
mes "A doação foi efetuada com sucesso e o doador foi notificado";
} else{
query_sql "INSERT INTO `donations` (`acc_id`, `points`, `time_added`) VALUES('" + .@accid + "', '" + .@points + "', '" + gettimestr("%d/%m %Y - %H:%M:%S",25) + "')";
mes .@name$;
mes "A doação foi efetuada com sucesso e o doador será notificado quando ele/ela entrar";
}
break;
Case 4:
if(select("Aumentar","Diminuir") == 1){
set .@type, 1;
set .@typem$, "";
} else{
set .@type, 2;
set .@typem$, "-";
}
mes "Nome do jogador:";
input .@dname$;
mes .@dname$;
mes "Pontos de doação:";
input .@points;
if(.@points < 1 || .@points > .@mpoint){
mes "Você tem que digitar um valor entre 1 e " + .@mpoint;
close;
} else if(.@points == 0){
mes .@name$;
mes "Você não pode digitar 0 como um valor";
close;
}
mes .@typem$ + .@points;
next;
if(select("Esses valores estão corretos","Voltar") == 2){
mes .@name$;
mes "Tente Novamente";
close;
}
if(query_sql("SELECT `account_id` FROM `char` WHERE `name` = '" + escape_sql(.@dname$) + "'",.@accid) == 0){
mes .@name$;
mes "Esse jogador não existe";
close;
}
if(isloggedin(.@accid) == 1){
set .@oldrid, getcharid(3);
attachrid(.@accid);
if(.@type == 1){
set #CASHPOINTS, #CASHPOINTS+.@points;
} else{
set #CASHPOINTS, #CASHPOINTS-.@points;
}
query_sql "INSERT INTO `donations` (`acc_id`, `points`, `collected`, `time_added`) VALUES('" + .@accid + "', '" + .@typem$ + .@points + "', 'yes', '" + gettimestr("%d/%m %Y - %H:%M:%S",25) + "')";
dispbottom "Seus pontos de doação foram adicionados com sucesso";
dispbottom "Seus novos pontos são " + #CASHPOINTS + .@pname$;
attachrid(.@oldrid);
mes .@name$;
mes "Os pontos doação foram trocados com sucesso e o doador foi notificado";
} else{
query_sql "INSERT INTO `donations` (`acc_id`, `points`, `time_added`) VALUES('" + .@accid + "', '" + .@typem$ + .@points + "', '" + gettimestr("%d/%m %Y - %H:%M:%S",25) + "')";
mes .@name$;
mes "Os pontos doação foram trocados com sucesso e o doador será notificado quando ele/ela entrar";
}
break;
Case 5:
mes .@name$;
mes "Nome do jogador:";
input .@dname$;
mes .@dname$;
next;
if(select("Esses valores estão corretos","Voltar") == 2){
mes .@name$;
mes "Tente Novamente";
close;
}
if(query_sql("SELECT `account_id` FROM `char` WHERE `name` = '" + escape_sql(.@dname$) + "'",.@accid) == 0){
mes .@name$;
mes "Esse jogador não existe";
close;
}
if(isloggedin(.@accid) == 1){
set .@oldrid, getcharid(3);
attachrid(.@accid);
set #CASHPOINTS, 0;
query_sql "INSERT INTO `donations` (`acc_id`, `points`, `collected`, `time_added`) VALUES('" + .@accid + "', '0', 'yes', '" + gettimestr("%d/%m %Y - %H:%M:%S",25) + "')";
dispbottom "Seus pontos de doação foram removidos";
attachrid(.@oldrid);
mes .@name$;
mes "A pontos doação foram removidos com sucesso e o doador foi notificado";
} else{
query_sql "INSERT INTO `donations` (`acc_id`, `points`, `time_added`) VALUES('" + .@accid + "', '0', '" + gettimestr("%d/%m %Y - %H:%M:%S",25) + "')";
mes .@name$;
mes "Os pontos doação foram removidos com sucesso e o doador será notificado quando ele/ela entrar";
}
break;
}
close;
if(isloggedin(getarg(0))){
attachrid(getarg(0));
if($reload) announce "Sua doação foi confirmada com sucesso, seus pontos de Cash foram adicionados, Obrigado.",bc_yellow|bc_self;
if(query_sql ("SELECT `points`, `id` FROM `donations` WHERE `acc_id` = '" + getcharid(3) + "' && `collected` = 'no'", .@points, .@id) >= 1){
for(set .@i, 0; .@i < getarraysize(.@points); set .@i, .@i+1){
if(.@points[.@i] == 0){
set #CASHPOINTS, 0;
} else{
set #CASHPOINTS, #CASHPOINTS+.@points[.@i];
}
query_sql "UPDATE `donations` SET `collected` = 'yes' WHERE `id` = '"+.@id[.@i]+"'";
}
}
end;
OnInit:
query_sql "CREATE TABLE IF NOT EXISTS `donations` ( `id` int(11) NOT NULL auto_increment, `acc_id` int(11) NOT NULL, `points` int(11) NOT NULL, `collected` varchar(11) NOT NULL default 'no', `time_added` varchar(21) NOT NULL, PRIMARY KEY (`id`)) ENGINE=InnoDB AUTO_INCREMENT=10 DEFAULT CHARSET=latin1";
end;
}
}
- cashshop Donate -1,20053:600,20057:600,20058:600,20060:600,4198:300,4132:300,4148:300,2115:200,2357:200,2421:200,2524:200,20106:600,20107:600,20108:600,20109:600,20110:600,20111:600,20116:600,20147:600,20148:600,20117:600,20257:300,20258:300,20259:500,20260:300,20261:500,20262:500,7719:500,7401:500
OBS: Ele já vem com cash shop, tem itens adicionado, vc pode mudar os ids de sua preferência caso não tenha estes itens BOA SORTE!
Última edição por Nosyel; 28-07-2009 às 04:36 AM.
|