Jump to content
  • 0

Question

Posted (edited)

Can i request for this script

 

NPC Registration

 

1. You have to be level 20 for you to allowed to register on that npc.

2. That npc have list of all registered.

3. i want it to be permanent, what i mean is i found a script like this but everytime i use @reloadscript the list will be deleted 

4. Thanks in advance

btw here's the script 

set .end,0;
	while(.end!=1){
	mes "[Sign up NPC]";
	mes "Want to sign up ?!";
	mes	"^6666ff^000000";
		for(set .@arrayvalue,getarraysize($@messageleft$); .@arrayvalue != -1;){
			mes $@messageleft$[.@arrayvalue];
			set .@arrayvalue, .@arrayvalue -1;
			}
			next;
			set .signmenu$,"Yes, Sign my name:Leave it alone";
			if(getgmlevel()>=99){set .signmenu$, .signmenu$ + ":^ff0000Wipe the list^000000"; }
			switch(select(.signmenu$)){
			case 1:
				mes "[Sign up NPC]";
				mes "You have signed up.";
				if($@counter % 2 == 1) {
				set $@messageleft$[$@counter], "^6666ff["+gettimestr("%H:%M",21)+"]^000000 ^ff0000"+ strcharinfo(0) + " Signed Up";
				mes "^ff0000" + @var$ + "^000000";
				} else {
				set $@messageleft$[$@counter], "^6666ff["+gettimestr("%H:%M",21)+"]^000000 "+strcharinfo(0) + " Signed Up";
				}
				set $@counter, $@counter + 1;
				close;
			case 2:
				close;
			case 3:
				set $@counter,0;	
				deletearray $@messageleft$[0],getarraysize($@messageleft$);
				set $@messageleft$[0],"";
				mes "They have been erased.";
				break;
		}
	}
	close;
	
	OnInit:
	waitingroom "Sign up NPC",0;
	set $@counter,0;
	set $@messageleft$[0],"";
	end;

 

Edited by Takuyakii

5 answers to this question

Recommended Posts

  • 0
Posted

Something like this?

prontera,150,150,6	script	Sample	100,{
	if (BaseLevel < 20) end;
	switch (select("Register", "View List", (getgmlevel() < 99 ? "" : "[^FF0000GM Menu^000000] Clear List"), "Exit")) {
		case 1:
			if (inarray($register$, strcharinfo(0)) != -1)
				mes "Already registered";
			else {
				mes "Done registration";
				$register$[getarraysize($register$)] = strcharinfo(0);
			}
			close;
		case 2:
			.@s = getarraysize($register$);
			if (!.@s)
				mes "No list";
			else {
				mes "Registration List";
				for (.@i = 0; .@i < .@s; .@i++)
					mes (.@i+1) + ". " + $register$[.@i];
			}
			close;
		case 3:
			deletearray $register$;
			end;
	}
}

 

  • Upvote 1
  • 0
Posted
11 hours ago, Patskie said:

Something like this?


prontera,150,150,6	script	Sample	100,{
	if (BaseLevel < 20) end;
	switch (select("Register", "View List", (getgmlevel() < 99 ? "" : "[^FF0000GM Menu^000000] Clear List"), "Exit")) {
		case 1:
			if (inarray($register$, strcharinfo(0)) != -1)
				mes "Already registered";
			else {
				mes "Done registration";
				$register$[getarraysize($register$)] = strcharinfo(0);
			}
			close;
		case 2:
			.@s = getarraysize($register$);
			if (!.@s)
				mes "No list";
			else {
				mes "Registration List";
				for (.@i = 0; .@i < .@s; .@i++)
					mes (.@i+1) + ". " + $register$[.@i];
			}
			close;
		case 3:
			deletearray $register$;
			end;
	}
}

 

Thanks it works ^_^ 

  • 0
Posted
On 8/17/2020 at 2:03 AM, Patskie said:

Something like this?


prontera,150,150,6	script	Sample	100,{
	if (BaseLevel < 20) end;
	switch (select("Register", "View List", (getgmlevel() < 99 ? "" : "[^FF0000GM Menu^000000] Clear List"), "Exit")) {
		case 1:
			if (inarray($register$, strcharinfo(0)) != -1)
				mes "Already registered";
			else {
				mes "Done registration";
				$register$[getarraysize($register$)] = strcharinfo(0);
			}
			close;
		case 2:
			.@s = getarraysize($register$);
			if (!.@s)
				mes "No list";
			else {
				mes "Registration List";
				for (.@i = 0; .@i < .@s; .@i++)
					mes (.@i+1) + ". " + $register$[.@i];
			}
			close;
		case 3:
			deletearray $register$;
			end;
	}
}

 

I wonder where the data will be save? I think if you restart your server the data/list will be lost.

  • 0
Posted
1 hour ago, jayvz17 said:

I wonder where the data will be save? I think if you restart your server the data/list will be lost.

"$"      - A global permanent variable.
           They are stored by map-server in database table `mapreg`.

 

  • Upvote 1
  • 0
Posted
2 hours ago, Patskie said:

"$"      - A global permanent variable.
           They are stored by map-server in database table `mapreg`.

 

I see. Thanks for clarification ?

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...