Please help this to work with latest rathena.
src/map/script.c | 26 ++++++++++++++++++++++++++
1 file changed, 26 insertions(+)
diff --git a/src/map/script.c b/src/map/script.c
index be346cb..4d373bd 100644
--- a/src/map/script.c
+++ b/src/map/script.c
@@ -18508,10 +18508,36 @@ bool script_hp_add(char *name, char *args, bool (*func)(struct script_state *st)
return script->add_builtin(&buildin, true);
}
+BUILDIN(guildjoin) {
+ int guild_id = script_getnum(st,2);
+ TBL_PC * sd;
+ struct guild * g;
+ if ( !( sd = map->charid2sd( script_getnum(st,3) ) ) ) {
+ script_pushint(st,-1);
+ return false;
+ }
+ if ( sd->status.guild_id ) {
+ script_pushint(st,-2);
+ return false;
+ }
+ if ( !( g = guild->search( guild_id ) ) ) {
+ script_pushint(st,-3);
+ return false;
+ }
+ if ( g->max_member >= MAX_GUILD ) {
+ script_pushint(st,-4);
+ return false;
+ }
+ sd->guild_invite = guild_id;
+ script_pushint( st, guild->reply_invite( sd, guild_id, 1 ) );
+ return true;
+}
+
#define BUILDIN_DEF(x,args) { buildin_ ## x , #x , args }
#define BUILDIN_DEF2(x,x2,args) { buildin_ ## x , x2 , args }
void script_parse_builtin(void) {
struct script_function BUILDIN[] = {
+ BUILDIN_DEF(guildjoin,"ii"),
// NPC interaction
BUILDIN_DEF(mes,"s*"),
BUILDIN_DEF(next,""),