· 4 years ago · Jan 04, 2021, 12:00 PM
1//------------------------------------------------------------------//
2// Version 1.0 //
3// Script By Dudewithoutname made with <3 - love //
4// CONFIGURATION //
5// BTW THIS SCRIPT IS KINDA BROKEN BUT IT WORKS AT THE SAME TIME XD //
6//------------------------------------------------------------------//
7// Webhooks
8hookUrl = "YOUR HOOK URL";
9hookName = "Sexy WebHook";
10hookImg = "https://i.ibb.co/zmz5TjF/dude-License.png"; // Icon by itim2101
11// Options
12gender1 = "male"; // allowed gender
13gender2 = "female"; // allowed gender btw fuck LGBT
14minAge = 18;
15maxAge = 74;
16// Perms
17permission_player = "licenses.player";
18permission_police = "licenses.police";
19permission_edit = "licenses.edit";
20// Message
21messColor = "orange";
22messIcon = "https://i.ibb.co/zmz5TjF/dude-License.png"; // Icon by itim2101
23// Translations
24translation_UI_discord_join = "Join Discord Imagine Link";
25translation_UI_1_command = "/name";
26translation_UI_2_command = "/surname";
27translation_UI_3_command = "/age";
28translation_UI_4_command = "/gender";
29translation_UI_3_command_info = minAge+"-"+maxAge;
30translation_UI_4_command_info = "male or female";
31translation_UI_title = "Create your Roleplay Character";
32translation_UI_upper_text = "Commands for creation";
33translation_UI_down_text= "idk what to type here XD";
34translation_UI_submit = "To confirm character type /submit";
35translation_UI_example_text = "Example";
36translation_register_name_success = "Name was set correctly!";
37translation_register_name_error = "There was an error setting name!";
38translation_register_surname_success = "Surname was set correctly!";
39translation_register_surname_error = "There was an error setting surname!";
40translation_register_age_success = "Age was set correctly!";
41translation_register_age_error = "There was an error setting age!";
42translation_register_gender_success = "Gender was set correctly!";
43translation_register_gender_error = "There was an error setting gender!";
44translation_submit_success = "Your character creation was successful";
45translation_submit_error_name = "There was a problem with character creation : you didn't specified name";
46translation_submit_error_age = "There was a problem with character creation : you didn't specified name";
47translation_submit_error_gender = "There was a problem with character creation : you didn't specified name";
48translation_submit_error_alreadyCreated = "There was problem with character creation : Name is too long";;
49translation_submit_error_name_alreadyCreated = "Your character was already created!";
50translation_game_close = "Type /close for close";
51translation_game_inspecting_ID = "You are inspecting ID";
52translation_game_inspecting_weapon = "You are inspecting weapon license";
53translation_game_inspecting_driver = "You are inspecting driver license";
54translation_game_error_permission = "You don't have permision to this command";
55translation_game_error_weapon= "This person doesn't have weapon license";
56translation_game_error_driver= "This person doesn't have driver license";
57translation_remove_player_car = "You have succesfully removed driver license of ";// Player Name
58translation_remove_player_gun = "You have succesfully removed weapon license of ";
59translation_remove_target_car = "Your driver license got removed";
60translation_remove_target_gun = "Your weapon license got removed";
61translation_create_player_car = "You have succesfully removed Driver license for ";// Player Name
62translation_create_player_gun = "You have succesfully removed Weapon license for ";// Player Name
63translation_create_target_car = "Now you have new driver license";
64translation_create_target_gun = "Now you have new weapon license";
65translation_edit_target_car_points = "Your driver license's points has been edited";
66translation_edit_target_car_class = "Your driver license's class has been edited";
67translation_edit_target_gun_license = "Your weapon license has been edited";
68translation_edit_target_gun_type = "Your driver license's type has been edited";
69translation_edit_editor_car_points = "You have edited driver license's points of ";// player name
70translation_edit_editor_car_class = "You have edited driver license's class of ";// player name
71translation_edit_editor_gun_license = "You have edited weapon license of ";// player name
72translation_edit_editor_gun_type = "You have edited weapon license's type of ";// player name
73//------------------------------------------------------------------//
74// End of Configuration //
75//------------------------------------------------------------------//
76// License Effect IDs
77licWeapon = 54302;
78licDriver = 54301;
79licID = 54300;
80// Start Effect IDs
81startBox = 51506;
82startCommands = 51507;
83startExample = 51508;
84startText = 51509;
85
86
87event onLoad(){
88 database.execute("CREATE TABLE IF NOT EXISTS licenseRP( steamid VARCHAR(17) PRIMARY KEY, name VARCHAR(36) NOT NULL , age VARCHAR(2) NOT NULL, gender VARCHAR(32) NOT NULL, status VARCHAR(32) NOT NULL, gun VARCHAR(10) NOT NULL, car VARCHAR(10) NOT NULL, gType VARCHAR(24) NOT NULL, gLic VARCHAR(24) NOT NULL, cClass VARCHAR(24) NOT NULL, cPoints VARCHAR(24) NOT NULL );");
89}
90
91event onPlayerJoined(player){
92 DBcheck = database.execute(" SELECT * FROM licenseRP WHERE steamid = '" + player.id + "' ");
93 getX = DBcheck[0];
94
95 if(DBcheck.count == 0){
96
97 effectManager.sendUI(startExample, 1, player.id,"Name Surname", "0" ,"Unspecified","Clear");
98 effectManager.sendUI(startCommands,418,player.id,translation_UI_1_command,translation_UI_2_command,translation_UI_3_command,translation_UI_4_command);
99 effectManager.sendUI(startText,419,player.id,translation_UI_title,translation_UI_down_text,translation_UI_submit,translation_UI_example_text);
100 effectManager.sendUI(startBox,420,player.id,translation_UI_discord_join,translation_UI_3_command_info,translation_UI_4_command_info);
101
102 player.speed = 0;
103 player.jumpHeight = 0;
104 player.god = true;
105 player.vanish = true;
106 player.setData("dName","x");
107 player.setData("dSurname","x");
108 player.setData("dAge","0");
109 player.setData("dGender","x");
110
111 }
112 else{
113 player.name = toString(getX[1]);
114 }
115}
116//------------------------------------------------------------------
117// Section 1 After Connect
118//-----------------------------------------------------------------
119command name(argM){
120 permission = "licenses.player";
121 execute(){
122 // some variables :P
123 name = player.getData("dName");
124 surname = player.getData("dSurname");
125 age = player.getData("dAge");
126 gender = player.getData("dGender");
127 verifyName = player.getData("verName");
128
129 setMeno = toString(argM);
130 if(setMeno.length > 2){
131 player.setData("dName",setMeno);
132 player.setData("verName","true");
133 player.message(translation_register_name_success,"7cdb00");
134 effectManager.clearUIbyID(startExample, player.id);
135 effectManager.sendUI(startExample, 1, player.id, name +" "+ surname, age ,gender,"Clear");
136 }
137 else{
138 player.message(translation_register_name_error,"red");
139 }
140 }
141}
142command surname(argP){
143 permission = "licenses.player";
144 execute(){
145 name = player.getData("dName");
146 surname = player.getData("dSurname");
147 age = player.getData("dAge");
148 gender = player.getData("dGender");
149 verifyName = player.getData("verName");
150
151 setPriez = toString(argP);
152 if(setPriez.length > 3){
153 player.setData("dSurname",setPriez);
154 player.setData("verSur","true");
155 player.message(translation_register_surname_success,"7cdb00");
156
157 effectManager.clearUIbyID(startExample, player.id);
158 effectManager.sendUI(startExample, 1, player.id, name +" "+ surname, age ,gender,"Clear");
159 }
160 else{
161 player.message(translation_register_name_error,"red");
162 }
163 }
164}
165command age(argVEK){
166 permission = "licenses.player";
167 execute(){
168 name = player.getData("dName");
169 surname = player.getData("dSurname");
170 age = player.getData("dAge");
171 gender = player.getData("dGender");
172 verifyName = player.getData("verName");
173
174 vekInt = toInt(argVEK);
175 if(argVEK >= minAge and argVEK <= maxAge){
176 vek = toString(vekInt);
177 player.setData("dAge",vek);
178 player.setData("verAge","true");
179 player.message(translation_register_age_success,"7cdb00");
180
181 effectManager.clearUIbyID(startExample, player.id);
182 effectManager.sendUI(startExample, 1, player.id, name +" "+ surname, age ,gender,"Clear");
183 }
184 else{
185 player.message(translation_register_age_error,"red");
186 }
187 }
188}
189command gender(argGEN){
190 permission = "licenses.player";
191 execute(){
192 name = player.getData("dName");
193 surname = player.getData("dSurname");
194 age = player.getData("dAge");
195 gender = player.getData("dGender");
196 verifyName = player.getData("verName");
197
198 if(argGEN.toLower() == gender1 or argGEN.toLower() == gender2){
199 player.setData("verGen","true"); // virgin XD
200 player.setData("dGender",argGEN.toLower());
201 player.message(translation_register_gender_success,"7cdb00");
202
203 effectManager.clearUIbyID(startExample, player.id);
204 effectManager.sendUI(startExample, 1, player.id, name +" "+ surname, age ,gender,"Clear");
205 }
206 else{
207 player.message(translation_register_gender_error,"red");
208 }
209 }
210}
211command submit(){
212 permission = "licenses.player";
213 execute(){
214 // some variables :P
215 name = player.getData("dName");
216 surname = player.getData("dSurname");
217 age = player.getData("dAge");
218 gender = player.getData("dGender");
219 verifyName = player.getData("verName");
220 verifySurname = player.getData("verSur");
221 verifyAge = player.getData("verAge");
222 verifyGender = player.getData("verGen"); // virgin XD
223
224 dataCheck = database.execute(" SELECT * FROM licenseRP WHERE steamid = '" + player.id + "' ");
225 if(dataCheck.count != 0)
226 if(verifyName == "true" and verifySurname == "true"){
227 if(verifyAge == "true"){if(verifyGender == "true"){
228 fullName = name+" "+surname;
229 if(toString(fullName).length <= 31){
230 database.execute("INSERT INTO licenseRP (steamid, name, age, gender, status, gun, car, gType , gLic , cClass , cPoints ) VALUES ('" + player.id + "','" + fullName + "','" + age + "','" + gender + "','" + "Clear" + "','"+ "0" +"','" + "0" + "','" + "0" +"','"+ "0" +"','"+ "0" +"','"+ "0" +"');");
231
232 player.speed = 1;
233 player.jumpHeight = 1;
234 player.god = false;
235 player.vanish = false;
236
237 player.name = name + " " + surname;
238 player.message(translation_submit_success ,"7cdb00");
239 effectManager.clearUIbyID(startExample, player.id);
240 effectManager.clearUIbyID(startCommands, player.id);
241 effectManager.clearUIbyID(startText, player.id);
242 effectManager.clearUIbyID(startBox, player.id);
243
244 }
245 else{player.message(translation_submit_error_name_tooLong,"red");}}
246 else{player.message(translation_submit_error_gender,"red");}
247 else{player.message(translation_submit_error_age,"red");}}
248 else{player.message(translation_submit_error_name,"red");}
249 else{player.message(translation_submit_error_alreadyCreated,"red");}
250 }
251 }
252}
253//------------------------------------------------------------------
254// Section 2 Inspect
255//------------------------------------------------------------------
256command Inspect(){
257 permission = "licenses.player";
258 execute(){
259 player.sudo("/close");
260
261 if(arguments[0] == "view"){if(player.hasPermission(permission_police) == true){
262 target = player.look.getPlayer();
263 getfDB = database.execute(" SELECT * FROM licenseRP WHERE steamid = '" + target.id + "' ");
264 posY = getfDB[0];
265
266 if(arguments[1] == "ID"){
267 effectManager.sendUI(licID, 2, player.id, posY[1] , posY[2] , posY[3] , posY[4] );
268 player.message(translation_game_close,messColor,messIcon);
269 target.message(translation_game_inspecting_ID,messColor,messIcon);
270 }
271 else if(arguments[1] == "weapon"){
272 if(posY[5] == "1"){
273 effectManager.sendUI(licWeapon, 3, player.id, posY[1] , posY[7] , posY[8] );
274 player.message(translation_game_close,messColor,messIcon);
275 target.message(translation_game_inspecting_weapon,messColor,messIcon);
276 if(posY[8].contains("A") == true ){
277 effectManager.sendUI(51731, 11, player.id);
278 }
279 else if(posY[8].contains("B") == true ){
280 effectManager.sendUI(51732, 12, player.id);
281 }
282 else if(posY[8].contains("C") == true ){
283 effectManager.sendUI(51733, 13, player.id);
284 }
285 }
286 else{
287 player.message(translation_game_error_weapon,"red",messIcon);
288 }
289 }
290 else if(arguments[1] == "driver"){
291 if(posY[6] == "1"){
292 effectManager.sendUI(licDriver, 4, player.id, posY[1] , posY[9] , posY[10] );
293 player.message(translation_game_close,messColor,messIcon);
294 target.message(translation_game_inspecting_driver,messColor,messIcon);
295 }
296 else{
297 player.message(translation_game_error_driver,"red",messIcon);
298 }
299 }
300 }else{ player.message(translation_game_error_permission,"red",messIcon);}
301 }
302 else{
303 getfDB = database.execute(" SELECT * FROM licenseRP WHERE steamid = '" + player.id + "' ");
304 posY = getfDB[0];
305
306 if(arguments[0] == "ID"){
307 effectManager.sendUI(licID, 2, player.id, posY[1] , posY[2] , "-" , posY[4] );
308 player.message(translation_game_close,messColor,messIcon);
309 }
310 else if(arguments[0] == "weapon"){
311 if(posY[5] == "1"){
312 effectManager.sendUI(51723, 3, player.id, posY[1] , posY[7] , posY[8] );
313 if(posY[7].contains("A") == true ){
314 effectManager.sendUI(51731, 11, player.id);
315 }
316 else if(posY[7].contains("B") == true ){
317 effectManager.sendUI(51732, 12, player.id);
318 }
319 else if(posY[7].contains("C") == true ){
320 effectManager.sendUI(51733, 13, player.id);
321 }
322 player.message(translation_game_close,messColor,messIcon);
323 }
324 else{
325 player.message(translation_game_error_weapon,"red",messIcon);
326 }
327 }
328 else if(arguments[0] == "driver"){
329 if(posY[6] == "1"){
330 effectManager.sendUI(51722, 4, player.id, posY[1] , posY[9] , posY[10] );
331 player.message(translation_game_close,messColor,messIcon);
332 }
333 else{
334 player.message(translation_game_error_driver,"red",messIcon);
335 }
336 }
337 }
338 }
339}
340command close(){
341 permission = "licenses.player";
342 execute(){
343 effectManager.clearUIbyID(licID, player.id);
344 effectManager.clearUIbyID(licDriver, player.id);
345 effectManager.clearUIbyID(licWeapon, player.id);
346 }
347}
348//------------------------------------------------------------------
349// Section 3 Give and Edit
350//------------------------------------------------------------------
351command create(){
352 permission = "licenses.edit";
353 execute(){
354 prkz = toString(arguments[1]);
355 tar = toPlayer(arguments[0]);
356 if(prkz == "weapon"){
357 checkZb = database.execute(" SELECT zbroj FROM licenseRP WHERE steamid = '" + tar.id + "' ");
358 alreadyZbrojny = checkZb[0];
359 if(alreadyZbrojny == "0"){
360 database.execute("UPDATE licenseRP SET zbroj = '"+"1"+"' ,zLic = '"+"Osobna"+"' , zTyp = '"+"-"+"' WHERE steamid = '"+ tar.id +"';");
361 player.message(translation_create_player_gun+tar.name,messColor,messIcon);
362 tar.message(translation_create_target_gun,messColor,messIcon);
363 }
364 }
365 else if(prkz == "driver"){
366 checkVd = database.execute(" SELECT vodic FROM licenseRP WHERE steamid = '" + tar.id + "' ");
367 alreadyVodicsky = checkVd[0];
368 if(alreadyVodicsky == "0"){
369 database.execute("UPDATE licenseRP SET vodic = '"+"1"+"',vSkup = '"+"-"+"',vBody = '"+"50"+"' WHERE steamid = '"+ tar.id +"';");
370 player.message(translation_create_player_car+tar.name,messColor,messIcon);
371 tar.message(translation_create_target_car,messColor,messIcon);
372 }
373 }
374 }
375}
376command remove(){
377 permission = "licenses.edit";
378 execute(){
379 prkz = toString(arguments[1]);
380 tar = toPlayer(arguments[0]);
381 if(prkz == "weapon"){
382 checkZb = database.execute(" SELECT zbroj FROM licenseRP WHERE steamid = '" + tar.id + "' ");
383 alreadyZbrojny = checkZb[0];
384 if(alreadyZbrojny == "1"){
385 database.execute("UPDATE licenseRP SET gun = '"+"0"+"' ,gLic = '"+"Osobna"+"' , gLic = '"+"-"+"' WHERE steamid = '"+ player.id +"';");
386 player.message(translation_remove_player_gun+tar.name,messColor,messIcon);
387 tar.message(translation_remove_target_gun,messColor,messIcon);
388 }
389 }
390 else if(prkz == "driver"){
391 checkVd = database.execute(" SELECT vodic FROM licenseRP WHERE steamid = '" + tar.id + "' ");
392 alreadyVodicsky = checkVd[0];
393 if(alreadyVodicsky == "1"){
394 database.execute("UPDATE licenseRP SET car = '"+"0"+"',cClass = '"+"-"+"',cPoints = '"+"0"+"' WHERE steamid = '"+ tar.id +"';");
395 player.message(translation_remove_player_car+tar.name,messColor,messIcon);
396 tar.message(translation_remove_target_car,messColor,messIcon);
397 }
398 }
399 }
400}
401
402command edit(){
403 permission = "licenses.edit";
404 execute(){
405 target = toPlayer(arguments[0]);
406 if(arguments[1] == "weapon"){
407
408 if(arguments[2] == "type")
409 {
410 database.execute("UPDATE licenseRP SET gType = '"+arguments[3]+"' WHERE steamid = '"+ target.id +"';");
411 player.message(translation_edit_edit_gun_license+tar.name,messColor,messIcon);
412 tar.message(translation_edit_target_gun_type,messColor,messIcon);
413
414 }
415 else if(arguments[2] == "license")
416 {
417 database.execute("UPDATE licenseRP SET gLic = '"+arguments[3]+"' WHERE steamid = '"+ target.id +"';");
418 player.message(translation_edit_editor_gun_license+tar.name,messColor,messIcon);
419 tar.message(translation_edit_target_gun_license,messColor,messIcon);
420 }
421 }
422 else if(arguments[1] == "driver"){
423 if(arguments[2] == "type")
424 {
425 database.execute("UPDATE licenseRP SET cClass = '"+arguments[3]+"' WHERE steamid = '"+ target.id +"';");
426 player.message(translation_edit_editor_car_type+tar.name,messColor,messIcon);
427 tar.message(translation_edit_target_car_type,messColor,messIcon);
428
429 }
430 else if(arguments[2] == "points")
431 {
432 database.execute("UPDATE licenseRP SET cPoints = '"+arguments[3]+"' WHERE steamid = '"+ target.id +"';");
433 player.message(translation_edit_editor_car_points+tar.name,messColor,messIcon);
434 tar.message(translation_edit_target_car_points,messColor,messIcon);
435 }
436 }
437 }
438}