Could you give me an example? please?
The npc that I modified, it is working, With vote for cash, only the words that I translated into Portuguese, are with wrong letters.
See How and the Npc script.
I modified the Fluxcp of hercules and added pagseguro in the fluxcp hercules and added voteforpoints for cash and modified this npc to work with hercules and it works, I just need to fix the words for Portuguese.
prontera,142,173,5 script VFP Manager 4_F_KAFRA5,{
function getPoints;
set .@n$, "[VFP Manager]";
set .@settings, 1; // 0 = item, 1 = shop
set .@itemReward, 501; // if settings is set to item
set .@convertRate, 2; // 2 Vote Points for 1 Red Potion
set .vp, getPoints(getcharid(3));
switch (.@settings) {
case 0:
mes .@n$;
mes "Você gostaria de converter seu "+ .vp +" Pontos de votação?";
mes "^ff0000A taxa de conversão atual é "+ .@convertRate +" Pontos de votação para 1 "+ getitemname(.@itemReward) +".";
next;
menu "Yes", L_Convert, "No", -;
mes .@n$;
mes "Então, tchau.";
break;
case 1:
mes .@n$;
mes "Você tem ^ff0000"+ .vp +"^000000 Pontos de votos.";
mes "Gostaria de ir as compras?";
next;
menu "Yes", -, "No", L_Goodbye;
mes .@n$;
mes "Divirta-se comprando!";
callshop "votepoints_shop",1;
npcshopattach "votepoints_shop";
end;
}
L_Goodbye:
mes .@n$;
mes "Adeus Volte sempre!. Não esquece de votar no servidor ^_^.";
close;
L_Convert:
if (.vp < .@convertRate)
goto L_VotePointsTooLow;
mes .@n$;
mes "Quantos pontos de voto você gostaria de converter?";
next;
menu "All", L_ConvertAll, "Input Amount", L_ConvertAmount;
L_ConvertAmount:
input .@convert;
if (.@convert > .vp)
goto L_VotePointsTooLow;
set .vp, ((.vp - .@convert) + (.@convert % .@convertRate));
set .@convert, (.@convert / .@convertRate);
getitem .@itemReward, .@convert;
query_sql("UPDATE cp_createlog SET votepoints = "+ .vp +" WHERE account_id = "+ getcharid(3));
mes .@n$;
mes "Você recebeu "+ .@convert +"x "+ getitemname(.@itemReward) +".";
mes "Seus pontos de voto atuais são "+ .vp;
close;
L_ConvertAll:
set .@convert, (.vp / .@convertRate);
set .vp, (.vp % .@convertRate);
getitem .@itemReward, .@convert;
query_sql("UPDATE cp_createlog SET votepoints = "+ .vp +" WHERE account_id = "+ getcharid(3));
mes .@n$;
mes "Você recebeu "+ .@convert +"x "+ getitemname(.@itemReward) +".";
mes "Seus pontos de voto atuais são "+ .vp;
close;
L_VotePointsTooLow:
mes .@n$;
mes "Seus pontos de voto estão muito baixos. Volte quando você tiver a quantidade minima de pontos de voto.";
close;
function getPoints {
set .@account_id, getarg(0);
set .@count, query_sql("SELECT value FROM acc_reg_num_db WHERE account_id = "+ .@account_id, .@value);
return .@count ? .@value : 0;
}
OnBuyItem:
set .@cost,0;
for(set .@i,0; .@i<getarraysize(@bought_nameid); set .@i,.@i+1)
for(set .@j,0; .@j<getarraysize(.itemShop); set .@j,.@j+2)
if (@bought_nameid[.@i] == .itemShop[.@j]) {
set .@cost, .@cost+(.itemShop[.@j+1]*@bought_quantity[.@i]);
break;
}
mes .@n$;
if (.@cost > .vp) mes "Voce nao tem pontos de voto suficientes.";
else {
for(set .@i,0; .@i<getarraysize(@bought_nameid); set .@i,.@i+1) {
getitem @bought_nameid[.@i], @bought_quantity[.@i];
dispbottom "Purchased "+@bought_quantity[.@i]+"x "+getitemname(@bought_nameid[.@i])+".";
}
set .vp, .vp - .@cost;
query_sql("UPDATE acc_reg_num_db SET value = value - "+ .@cost +" WHERE account_id = "+ getcharid(3));
mes .@n$;
mes "Negócio concluído.";
mes "Você agora tem ^ff0000"+ .vp +"^000000 Pontos de votos.";
emotion e_cash;
}
set .@cost,0;
deletearray @bought_nameid[0], getarraysize(@bought_nameid);
deletearray @bought_quantity[0], getarraysize(@bought_quantity);
close;
OnInit:
setarray .itemShop[0], 501,2,607,5,608,10; // <ITEM_ID>,<PRICE>,...
npcshopdelitem "votepoints_shop",512;
for(set .@i, 0; .@i < getarraysize(.itemShop); set .@i, .@i+2)
npcshopadditem "votepoints_shop", .itemShop[.@i], .itemShop[.@i+1];
end;
}
- shop votepoints_shop -1,512:-1