Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- quest ChangeNameWithVip begin
- state start begin
- function isNameAlready(playerInput)
- local index, value = mysql_direct_query(string.format("SELECT name as name FROM player WHERE name = '%s';", playerInput));
- if (index < 1) then
- return false; -- there is no such name;
- end
- return true; -- the name is already used
- end
- function ChangeNameAddVip(newPlayerName, oldPlayerName)
- return mysql_direct_query(string.format("UPDATE player SET name = '%s' WHERE name = '%s'", newPlayerName, oldPlayerName));
- end
- function isVipAlreadyAdded()
- return pc.getqf("ChangeNameWithVipUsage") ~= 0;
- end
- when 71173.use begin
- if (ChangeNameWithVip.isVipAlreadyAdded()) then
- syschat("Poti adauga gradul [VIP] doar odata pe caracter!")
- return;
- end
- local playerName = pc.get_name();
- local itemVnum = item.get_vnum();
- say_title(string.format("%s:[ENTER]", item_name(itemVnum)))
- say("Acest obiect ofera posibilitatea de a adauga[ENTER]gradul de [VIP] caracterului tau si[ENTER]cu posibilitatea de a schimba numele precedent[ENTER][ENTER]Doresti sa incepi procesul?")
- if (select("Da", "Nu") == 1) then
- say_title(string.format("%s:[ENTER]", item_name(itemVnum)))
- say("Introdu numele dorit:")
- local strInput = string.gsub(input(), "[^A-Za-z0-9]", "");
- local inputLen = string.len(strInput);
- if (inputLen < 3) then
- say("Numele tau trebuie sa contina cel putin[ENTER]3 caractere.")
- return;
- end
- if (inputLen > 7) then
- say("Numele tau trebuie sa fie de maxim[ENTER]7 caractere.")
- return;
- end
- if (ChangeNameWithVip.isNameAlready(string.format("[%s]", strInput))) then
- say("Acest nume a fost luat de catre alta persoana.[ENTER]Adaugarea numelui a fost anulata.")
- return;
- end
- if (not pc.can_warp()) then
- say("Asteapta 10 secunde de la inchiderea negotului.")
- return;
- end
- ChangeNameWithVip.ChangeNameAddVip(string.format("[%s]", strInput), playerName);
- say("Adaugarea gradului [VIP] a avut succes.[ENTER]Actualizarea acestuia se face dupa 15 min[ENTER]offline de pe caracter/cont.")
- pc.setqf("ChangeNameWithVipUsage", 1);
- pc.remove_item(itemVnum, 1);
- end
- end
- end
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement