summaryrefslogtreecommitdiff
path: root/npc/guilds/management.txt
diff options
context:
space:
mode:
authorJesusaves <cpntb1@ymail.com>2019-03-14 14:10:28 -0300
committerJesusaves <cpntb1@ymail.com>2019-03-14 14:10:28 -0300
commit8990e4fae71b152ff78308f83b43c9a2083419d2 (patch)
tree12c4066fbabf19ad63781748028ebc143ec5f700 /npc/guilds/management.txt
parent2c090b90f74d4b1cfc5d43cb9556f99d5bb86d0a (diff)
downloadserverdata-8990e4fae71b152ff78308f83b43c9a2083419d2.tar.gz
serverdata-8990e4fae71b152ff78308f83b43c9a2083419d2.tar.bz2
serverdata-8990e4fae71b152ff78308f83b43c9a2083419d2.tar.xz
serverdata-8990e4fae71b152ff78308f83b43c9a2083419d2.zip
Add all (or most of) Guild Utils, except for guild average player level.
More feature is required, and recipes list are still ToDo. Guild Hall cannot be accessed (yet).
Diffstat (limited to 'npc/guilds/management.txt')
-rw-r--r--npc/guilds/management.txt82
1 files changed, 82 insertions, 0 deletions
diff --git a/npc/guilds/management.txt b/npc/guilds/management.txt
new file mode 100644
index 000000000..4b099adee
--- /dev/null
+++ b/npc/guilds/management.txt
@@ -0,0 +1,82 @@
+// Moubootaur Legends Script
+// Author:
+// Jesusalva
+// Description:
+// Guild Facility - Guild Settings (for guildmaster)
+
+guilds,35,30,0 script Guild Management NPC_NO_SPRITE,{
+ function gmaster;
+ .@gid=getcharid(2);
+ mesc (".:: "+getguildname(.@gid)+" ::."), 1;
+ mesc l("Guild Master: @@", getguildmaster(.@gid)), 3;
+ if (getguildnxp(.@gid) > 0)
+ mesc l("Guild Lv @@, @@/@@ EXP to level up", getguildlvl(.@gid), getguildexp(.@gid), getguildnxp(.@gid));
+ else
+ mesc l("Guild Lv @@, @@/@@ EXP to level up", getguildlvl(.@gid), getguildexp(.@gid), "???");
+
+ // I forgot a function to get player title and allow any guildmaster to change this
+ if (strcharinfo(0) == getguildmaster(.@gid))
+ {
+ do
+ {
+ gmaster();
+ next;
+ mesc l("Do you want to do something else?");
+ } while (askyesno() == ASK_YES);
+ }
+ close;
+
+ function gmaster {
+ .@gid=getcharid(2);
+ mesn;
+ mesc l("Please select the Guild Position you want to change.");
+ menuint
+ l("Abort"), -1,
+ l("Guild Master"), GPOS_GUILDMASTER,
+ l("Vice Leader"), GPOS_VICELEADER,
+ l("Recruiter"), GPOS_RECRUITER,
+ l("Position 4"), GPOS_4,
+ l("Position 5"), GPOS_5,
+ l("Newbie"), GPOS_NEWBIE;
+ mes "";
+ .@idx=0+@menuret;
+ if (.@idx < 0)
+ return;
+ mesc l("Please write how much in percent is EXP Tax for member (range: 0~50)"), 1;
+ input .@exptax;
+ if (.@exptax < 0 || .@exptax > 50)
+ return;
+ mesc l("Applying...");
+ switch (.@idx) {
+ case GPOS_GUILDMASTER:
+ .@name$="GuildMaster";
+ .@perm=GPERM_ALL;
+ break;
+ case GPOS_VICELEADER:
+ .@name$="ViceLeader";
+ .@perm=GPERM_ALL;
+ break;
+ case GPOS_RECRUITER:
+ .@name$="Recruiter";
+ .@perm=GPERM_INVITE;
+ break;
+ case GPOS_NEWBIE:
+ .@name$="Newbie";
+ .@perm=0;
+ break;
+ default:
+ .@name$="Position "+(.@idx+1);
+ .@perm=0;
+ break;
+ }
+ //debugmes "setguildrole(%d,%d,%d,%d,\"%s\")", .@gid, .@idx, .@perm, .@exptax, .@name$;
+ setguildrole(.@gid, .@idx, .@perm, .@exptax, .@name$);
+ mesc l("Done!"), 3;
+ return;
+ }
+
+OnInit:
+ .distance=1;
+ end;
+}
+