Pues eso, que vi en el foro de scripts inglés, este post, y decidí modificarlo un poco y traducirlo.
He hecho que sea un npc transparente que está situado en una estanteria con libros en kh_vila. Así parece que sea un libro de sugerencias real ^^
Espero que os sirva...a mi me parece algo util o_o
//********************************************************************************
****
//Script By Killerbox
//Trans. by Foow (español)
//Versión 2.0
//Este npc es como un libro de visitas. Sirve para que los users dejen sus sugerencias.
//********************************************************************************
****
kh_vila.gat,21,69,4 script Libro de sugerencias 111,{
if(sugn>0)
if($sugn$[sugn-1]!=strcharinfo(0))
set sugn,0;
set .@npcname$,"[^00AAAALibro de sugerencias^000000]";
mes .@npcname$;
mes "^00AAAAVes un estante lleno de libros^000000";
mes "^00AAAAY en el centro, un gran libro que dice "Sugerencias".^000000";
mes "^00AAAA¿Qué deseas hacer?^000000";
next;
set .@opt$,"Ver sugerencias:Ver mis sugerencias:Escribir/modificar mis sugerencias";
if(getgmlevel()>80){
set .@opt$,.@opt$+":Borrar la sugerencia:Borrar todas las sugerencias";
}
set .@ch,select(.@opt$);
switch(.@ch){
case 1:
if(!$sugamt){
mes .@npcname$;
mes "^00AAAAPasas las páginas y te das cuenta que no hay nada escrito^000000";
close;
}
set .lpp,4;
set .@page,0;
set .@mpage,($sugamt-($sugamt%.lpp))/.lpp;
set .@p,0;
if($sugamt%.lpp){
set .@mpage,.@mpage+1;
}
set .@mpage,.@mpage-1;
mes .@npcname$;
mes "(^009900Página : "+(.@page+1)+"/"+(.@mpage+1)+"^000000)";
while(3){
for(set .@i,0; .@i<.lpp; set .@i,.@i+1){
set .@p,.@p+1;
mes "("+(.@p)+") "+$sugn$[.@p-1]+" : "+$sugm$[.@p-1]+"^000000";
if(.@p==$sugamt)
goto L_Ex;
}
L_Ex:
next;
set .@nopt$,"Next:Back:Leave";
set .@nc,select(.@nopt$);
switch(.@nc){
case 1:
if(.@page<.@mpage)
set .@page,.@page+1;
set .@p,.@page*.lpp;
break;
case 2:
if(.@page>0)
set .@page,.@page-1;
set .@p,.@page*.lpp;
break;
case 3:
close;
break;
}
mes .@npcname$;
mes "(^009900Página : "+(.@page+1)+"/"+(.@mpage+1)+"^000000)";
}
break;
case 2:
if($sugn$[sugn-1]!=strcharinfo(0)){
mes .@npcname$;
mes "^00AAAANo has escrito ninguna^000000";
mes "^00AAAAsugerencia^000000";
close;
}
mes .@npcname$;
mes "("+sugn+") "+$sugn$[sugn-1]+" : "+$sugm$[sugn-1]+"^000000";
close;
break;
case 3:
mes .@npcname$;
mes "^00AAAARecuerda que si escribes algo ofensivo^000000";
mes "^00AAAApuede ser motivo de ban^000000";
input .@sug$;
if(compare(.@sug$,"puta")|compare(.@sug$,"mierda")|compare(.@sug$,"puto")){
next;
mes .@npcname$;
mes "^00AAAACuida ese lenguaje^000000";
close2;
atcommand "@kick "+strcharinfo(0);
end;
}
if(sugn==0){
next;
mes .@npcname$;
mes "^00AAAAEsta es tu primera sugerencia, eh?^000000";
set $sugamt,$sugamt+1;
set sugn,$sugamt;
set $sugn$[sugn-1],strcharinfo(0);
}
next;
mes .@npcname$;
set $sugm$[sugn-1],.@sug$;
mes "("+sugn+") "+$sugn$[sugn-1]+" : "+$sugm$[sugn-1]+"^000000";
close;
break;
case 4:
mes .@npcname$;
mes "WIP.";
close;
break;
case 5:
mes .@npcname$;
mes "^00AAAAPorfavor, escribe 'Quiero borrarlo todo'para seguir^000000";
input .@pass$;
if(.@pass$!="Quiero borrarlo todo"){
mes "Fallido.";
close;
}
next;
if(select("Last Chance Out!:Continue.")==1){
mes .@npcname;
mes "Guay.";
close;
}
cleararray $sugn$[0],0,$sugamt;
cleararray $sugm$[0],0,$sugamt;
set $sugamt,0;
set .@nb,query_sql("DELETE FROM `global_reg_value` WHERE `str`='sugn'");
mes .@npcname$;
mes "Hecho.";
close;
break;
default:
close;
break;
}
close;
OnInit:
initnpctimer;
OnTimer720000:
switch(rand(4)){
case 0:
npctalk "¡Úsame!";
break;
case 1:
npctalk "¡Deja aqui tus sugerencias!";
break;
case 2:
npctalk "Eeeeeeeo";
break;
case 3:
npctalk "¡Dame sugerencias o dame la muerte!";
break;
default:
break;
}
stopnpctimer;
setnpctimer 0;
startnpctimer;
end;
}