Jump to content
  • 0

help to autoi kick players


GM Winter

Question


  • Group:  Members
  • Topic Count:  176
  • Topics Per Day:  0.14
  • Content Count:  666
  • Reputation:   9
  • Joined:  12/04/20
  • Last Seen:  

hello is there any script preventing players with party to enter a specific map or it will automatically kick them? 

Link to comment
Share on other sites

10 answers to this question

Recommended Posts

  • 0

  • Group:  Members
  • Topic Count:  1
  • Topics Per Day:  0.00
  • Content Count:  234
  • Reputation:   87
  • Joined:  06/30/18
  • Last Seen:  

You could create a custom teleport, that only lets you enter without a party and use a mapflag to prevent the creation of new a party on the target map to make sure there are no partys on that map.
 

prontera,150,150,4	script	 #nopartyteleport	WARPNPC,3,3,{
	end;

	OnTouch_:
		if(getcharid(1)) {
			dispbottom("Players with a party can't enter!");
			end;
		}

		warp("izlude", 155, 155);
}

izlude	mapflag	partylock

 

Edited by Winterfox
Link to comment
Share on other sites

  • 0

  • Group:  Members
  • Topic Count:  176
  • Topics Per Day:  0.14
  • Content Count:  666
  • Reputation:   9
  • Joined:  12/04/20
  • Last Seen:  

14 hours ago, Winterfox said:

You could create a custom teleport, that only lets you enter without a party and use a mapflag to prevent the creation of new a party on the target map to make sure there are no partys on that map.
 

prontera,150,150,4	script	 #nopartyteleport	WARPNPC,3,3,{
	end;

	OnTouch_:
		if(getcharid(1)) {
			dispbottom("Players with a party can't enter!");
			end;
		}

		warp("izlude", 155, 155);
}

izlude	mapflag	partylock

 

hello can i add it in this script instead

 

Quote

-    script    Event_LMS    -1,{
OnInit:    
    // Mapflags
    setarray .@mapflag,
        mf_nowarp,
        mf_pvp_noguild,
        mf_pvp_noparty,
        mf_partylock,    
        mf_nowarpto,
        mf_noteleport,
        mf_nomemo,
        mf_nosave,
        mf_noicewall,
        mf_nobranch,
        mf_noreturn;
        
    for ( .@i = 0; .@i < getarraysize(.@mapflag); .@i++)
        setmapflag "06guild_01", .@mapflag[.@i];
        
    end;

OnStart:
    if ( .start ) end;
    .start = 1;
    pvpoff "06guild_01";
    announce "LMS: We are going to have a Last Man Standing event.",0;
    sleep 10000;
    announce "LMS: For those who wants to join, use @eventjoin",0;
    sleep 10000;
    announce "LMS: After 1 Minute Event will close.",0;
    sleep 10000;
    announce "LMS: So please if you want to join. use @eventjoin",0;
    sleep 60000;
    announce "LMS: The entry to the event is now closed.",bc_all,0x0ceedb;
    if ( getmapusers("06guild_01") < 2 ) {
        announce "LMS: Not enough participants.",bc_all,0x0ceedb;
        .start = false;
        end;
    }
    .start = 2;
    sleep 3500;
    mapannounce "06guild_01","We're about to begin the event.",bc_map,0x0ceedb;
    sleep 2500;
    mapannounce "06guild_01","The rules are simple.",bc_map,0x0ceedb;
    sleep 2500;
    mapannounce "06guild_01","Kill everyone in the map.",bc_map,0x0ceedb;
    sleep 2500;
    mapannounce "06guild_01","Last Man Standing wins!",bc_map,0x0ceedb;
    sleep 2000;
    mapannounce "06guild_01","That's all. Let's begin.",bc_map,0x0ceedb;
    sleep 3000;
    for (.@i = 10; .@i > 0; .@i--) {
        mapannounce "06guild_01", "LMS: -- "+.@i+" --",bc_map,0x0ceedb;
        sleep 1000;
    }
    mapannounce "06guild_01", "LMS: Fight! ",bc_map,0x0ceedb;
    pvpon "06guild_01";
    .timer = 0;
    initnpctimer;
    end;
    
OnTimer5000: // check every 5 secs..
    .timer++;
    .@size = getmapusers("06guild_01");
    if ( .@size > 1 && .timer == 6 ) {
        .timer = 0;
        mapannounce "06guild_01", "LMS: "+ .@size +" players left..", bc_blue;
    } 
    else if ( .@size <= 1 )
        donpcevent strnpcinfo(3)+"::OnEndEvent";
    setnpctimer 0;
    end;
    
OnEndEvent:
    stopnpctimer;
    .start = false;
    pvpoff "06guild_01";
    mapannounce "06guild_01", "LMS: Event ended!",bc_map,0x0ceedb;
    sleep 5000;
    .@size = getmapunits(BL_PC,"06guild_01",.@aid);
    if ( .@size == 0 ) {
        announce "LMS: No winners.",0;
        end;
    }
    attachrid .@aid;
    announce strcharinfo(0)+" has won the Last Man Standing Event.",bc_all,0x0ceedb;
    if ( $event_options&1 ) {
        for ( .@j = 0; .@j < $event_item_arr; .@j += 2 )
            getitem $event_item_reward[.@j], $event_item_reward[.@j+1];
    }
    if ( $event_options&2 ) {
        setd $event_var$, getd($event_var$)+$event_var_gain;
        dispbottom "You gained "+$event_var_gain+" "+$event_var_name$+". You now have "+getd($event_var$)+" "+$event_var_name$+".";
    }                
    warp "payon",178,100;
    end;
    
OnPCDieEvent:
    if ( .start && strcharinfo(3) == "06guild_01" ) {
        warp "payon",178,100;
        .@size = getmapusers("06guild_01");
        if ( .@size > 1 )
            mapannounce "06guild_01", "LMS: "+ .@size +" players left..", bc_blue;
        else if ( .@size <= 1 )
            donpcevent strnpcinfo(3)+"::OnEndEvent";
    }
    end;
    
}

 

Link to comment
Share on other sites

  • 0

  • Group:  Members
  • Topic Count:  123
  • Topics Per Day:  0.03
  • Content Count:  642
  • Reputation:   82
  • Joined:  04/07/14
  • Last Seen:  

On 12/19/2023 at 5:08 PM, GM Winter said:

hello can i add it in this script instead

 

 

What happens if those LMS players have party? I don't see any exploits there.

Link to comment
Share on other sites

  • 0

  • Group:  Members
  • Topic Count:  176
  • Topics Per Day:  0.14
  • Content Count:  666
  • Reputation:   9
  • Joined:  12/04/20
  • Last Seen:  

8 hours ago, Gidz Cross said:

What happens if those LMS players have party? I don't see any exploits there.

if they have party they will kill the solo players first before they leave their party and kill each other 

Link to comment
Share on other sites

  • 0

  • Group:  Members
  • Topic Count:  123
  • Topics Per Day:  0.03
  • Content Count:  642
  • Reputation:   82
  • Joined:  04/07/14
  • Last Seen:  

18 hours ago, GM Winter said:

if they have party they will kill the solo players first before they leave their party and kill each other 

Oh yeah LMS (last man standing) I thought its NVZ (novice vs zombie) hahahaha! Winterfox is correct.

On your script there is already mf_partylock in the Oninit area.

Where is the script when the players use @eventjoin? That is where you need to add this 

 

		if(getcharid(1)) {
			dispbottom("Players with a party can't enter!");
			end;
		}

		warp("izlude", 155, 155);
}

 

Link to comment
Share on other sites

  • 0

  • Group:  Members
  • Topic Count:  78
  • Topics Per Day:  0.03
  • Content Count:  436
  • Reputation:   167
  • Joined:  12/12/17
  • Last Seen:  

you can just add a pvp_noparty mapflag..
 

*pvp
*pvp_noparty
*pvp_noguild
*pvp_nocalcrank

Enables Player vs. Player mode on a map and applies the corresponding damage adjustments.
'pvp_noparty' will ignore party alliances.
'pvp_noguild' will ignore guild alliances.
'pvp_nocalcrank' will disable calculation of PvP rankings.

 

Link to comment
Share on other sites

  • 0

  • Group:  Members
  • Topic Count:  176
  • Topics Per Day:  0.14
  • Content Count:  666
  • Reputation:   9
  • Joined:  12/04/20
  • Last Seen:  

5 hours ago, Gidz Cross said:

Oh yeah LMS (last man standing) I thought its NVZ (novice vs zombie) hahahaha! Winterfox is correct.

On your script there is already mf_partylock in the Oninit area.

Where is the script when the players use @eventjoin? That is where you need to add this 

 

		if(getcharid(1)) {
			dispbottom("Players with a party can't enter!");
			end;
		}

		warp("izlude", 155, 155);
}

 

hello ive try to put it in the script i got a lot of errors dont know where to add this line heres the script 

 

Quote

// Basic Event Manager
// By Mabuhay
/*-=-=-=-=-=-=-=-=-=-=-=-=-=-
 Currently added are the ff :
 {#} NAME - "NPC_NAME" 
 [1] Bombring - "Event_Bombring"
 [2] Dice - "Event_Dice"
 [3] Last Man Standing - "Event_LMS"
 [4] Novice V Zombie - "Event_NvZ"
 [5] Poring Catcher - "Poring_Catcher"
 [6] Poring Hunter - "Poring_Hunter" (Added 12-15-2019)
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-*/
// For easier management of Event NPCs
/////////////////////////////////////
//            NOTE:                //
/////////////////////////////////////
// I don't support any modifications unless I want to.
// But if you want to change things especially the rewards,
// Please refer to my F_Reward Functions
// https://rathena.org/board/files/file/4068-itemvariablepoints-reward-function-for-beginners-or-lazy/
// You should be able to easily change the rewards
// If you have basic scripting knowledge

-    script    Event_Manager    FAKE_NPC,{
OnInit:
    // 1 = item reward
    // 2 = variable/cashpoints reward
    // If you want to set item and variable/cashpoints rewards, do 1|2.
    // If you only want 1, just choose between 1 or 2
    $event_options = 1; 
    
    // If item reward enabled
    // What items will be rewarded
    setarray $event_item_reward,
        12412, 2,
        
    // If variable reward.. set to your variable.
    // If cashpoints.. set to #CASHPOINTS / #KAFRAPOINTS (Free Cash Points)
    $event_var$ = "#EVENTVARIABLE";
    
    // Variable name?
    // If cash points, set to Cash Points
    // If your custom var, set to the name of that thing.
    $event_var_name$ = "Custom Points";
    
    // How much points gain if #VAR / #CASHPOINTS / #KAFRAPOINTS?
    $event_var_gain = 1;
    
    $event_item_arr = getarraysize($event_item_reward);
    
    // @eventstart for GM
    bindatcmd "eventstart", strnpcinfo(0)+"::OnStart",60,60;
    
    // @eventjoin
    bindatcmd "eventjoin", strnpcinfo(0)+"::OnJoinEvent";
    end;
    
OnStart:
    mes "Select what event to start:";
    next;
    switch(select("~ Dice","~ LMS","~ Poring Catcher")) {
    case 1: .@npc$ = "Event_Dice"; break;
    case 2: .@npc$ = "Event_LMS"; break;
    case 3: .@npc$ = "Poring_Catcher"; break;
    }
    donpcevent .@npc$+"::OnStart";
    end;

OnJoinEvent:
    mes "[ Event Status ]";
    mes "Event are as follows : ";
    next;
    switch(select(
        "Dice Event - "+ ((getvariableofnpc(.start,"Event_Dice") == 1) ? "^0000ffJoin Event":((getvariableofnpc(.start,"Event_Dice") == 2) ? "^0000ffEvent On-Going":"^ff0000Not Available"))+"^000000",
        "Last Man Standing - "+ ((getvariableofnpc(.start,"Event_LMS") == 1) ? "^0000ffJoin Event":((getvariableofnpc(.start,"Event_LMS") == 2) ? "^0000ffEvent On-Going":"^ff0000Not Available"))+"^000000",
        "Poring Catcher - "+ ((getvariableofnpc(.start,"Poring_Catcher") == 1) ? "^0000ffJoin Event":((getvariableofnpc(.start,"Poring_Catcher") == 2) ? "^0000ffEvent On-Going":"^ff0000Not Available"))+"^000000"
    )) {
        
    case 1:
        .@start = getvariableofnpc(.start,"Event_Dice");
        .@map$ = "quiz_02"; .@x = 55; .@y = 87;
        break;
        
    case 2:
        .@start = getvariableofnpc(.start,"Event_LMS");
        .@map$ = "06guild_01"; .@x = 0; .@y = 0;
        break;
        
    case 3:
        .@start = getvariableofnpc(.start,"Poring_Catcher");
        .@map$ = "poring_w01"; .@x = 100; .@y = 100;
        break;
    }    
    if ( !.@start ) {
        mes "Event is not available.";
        close;
    } else if ( .@start == 2 ) {
        mes "Event is on-going";
        close;
    }
    sc_end SC_ALL;
    percentheal 100,100;
    warp .@map$, .@x, .@y;
    end;

    // OnClock<hour><minute>: donpcevent "<npc_name>::OnStart";

    OnMon0100: donpcevent "Poring_Catcher::OnStart"; end; //1am
    OnMon0800: donpcevent "Poring_Catcher::OnStart"; end; //8am
    OnMon1300: donpcevent "Poring_Catcher::OnStart"; end; //1pm 
    OnMon2000: donpcevent "Poring_Catcher::OnStart"; end; //8pm

    OnWed0100: donpcevent "Poring_Catcher::OnStart"; end; //1am
    OnWed0800: donpcevent "Poring_Catcher::OnStart"; end; //8am
    OnWed1300: donpcevent "Poring_Catcher::OnStart"; end; //1pm 
    OnWed2000: donpcevent "Poring_Catcher::OnStart"; end; //8pm

    OnFri0100: donpcevent "Poring_Catcher::OnStart"; end; //1am
    OnFri0800: donpcevent "Poring_Catcher::OnStart"; end; //8am
    OnFri1300: donpcevent "Poring_Catcher::OnStart"; end; //1pm 
    OnFri2000: donpcevent "Poring_Catcher::OnStart"; end; //8pm    
    
    OnTue0100: donpcevent "Event_Dice::OnStart"; end; //1am
    OnTue0800: donpcevent "Event_Dice::OnStart"; end; //8am
    OnTue1300: donpcevent "Event_Dice::OnStart"; end; //1pm 
    OnTue2000: donpcevent "Event_Dice::OnStart"; end; //8pm

    OnThu0100: donpcevent "Event_Dice::OnStart"; end; //1am
    OnThu0800: donpcevent "Event_Dice::OnStart"; end; //8am
    OnThu1300: donpcevent "Event_Dice::OnStart"; end; //1pm 
    OnThu2000: donpcevent "Event_Dice::OnStart"; end; //8pm

    OnSat0100: donpcevent "Event_Dice::OnStart"; end; //1am
    OnSat0800: donpcevent "Event_Dice::OnStart"; end; //8am
    OnSat1300: donpcevent "Event_Dice::OnStart"; end; //1pm 
    OnSat2000: donpcevent "Event_Dice::OnStart"; end; //8pm    
    
    
    
    
    
//    OnMon0800: donpcevent "Poring_Catcher::OnStart"; end; //    
//    OnMon1400: donpcevent "Event_Dice::OnStart"; end; //
//    OnMon2000: donpcevent "Event_LMS::OnStart"; end;

//    OnWed0800: donpcevent "Poring_Catcher::OnStart"; end;    
//    OnWed1400: donpcevent "Event_Dice::OnStart"; end;    
//    OnWed2000: donpcevent "Event_LMS::OnStart"; end;
    
//    OnFri0800: donpcevent "Poring_Catcher::OnStart"; end;    
//    OnFri1400: donpcevent "Event_Dice::OnStart"; end;    
//    OnFri2000: donpcevent "Event_LMS::OnStart"; end;    
    


}

// Bombring Event

-    script    Event_Bombring    -1,{
OnInit:
    // Mapflags
    setarray .@mapflag,
        mf_nowarp,
        mf_nowarpto,
        mf_noskill,
        mf_noteleport,
        mf_nomemo,
        mf_nosave,
        mf_noicewall,
        mf_nobranch,
        mf_noreturn;

        
    for ( .@i = 0; .@i < getarraysize(.@mapflag); .@i++)
        setmapflag "quiz_02", .@mapflag[.@i];
    end;

OnStart:
    if ( .start ) end;
    .round = 0;
    .start = 1;
    killmonsterall "quiz_02";
    announce "Bombring: We are going to have a Bombring event.",0;
    sleep 10000;
    announce "Bombring: For those who wants to join, use @eventjoin",0;
    sleep 10000;
    announce "Bombring: After 1 Minute Event will close.",0;
    sleep 10000;
    announce "Bombring: So please if you want to join. use @eventjoin",0;
    sleep 60000;
    announce "Bombring: The entry to the event is now closed.",bc_all,0x0ceedb;
    if ( getmapusers("quiz_02") < 1 ) {
        announce "Bombring: Not enough participants.",bc_all,0x0ceedb;
        .start = false;
        mapwarp "quiz_02", "prontera", 150, 180; // warp out.
        end;
    }
    .start = 2;
    sleep 3500;
    mapannounce "quiz_02","We're about to begin the event.",bc_map,0x0ceedb;
    sleep 2500;
    mapannounce "quiz_02","The rules are simple.",bc_map,0x0ceedb;
    sleep 2000;
    mapannounce "quiz_02","Event will run for 30 seconds for 5 total rounds.",bc_map,0x0ceedb;
    sleep 2500;
    mapannounce "quiz_02","All you have to do is avoid Bombrings and stay alive for 30 seconds.",bc_map,0x0ceedb;
    sleep 2000;
    mapannounce "quiz_02","That's all. Let's begin.",bc_map,0x0ceedb;
    sleep 3000;
    while ( .round < 5 ) {
        .@count = getmapusers("quiz_02");
        .round++;
        mapannounce "quiz_02","Round "+.round,bc_map,0x0ceedb;
        areamonster "quiz_02",48,334,71,357,"Run for you life!",1904, 5 * .@count * .round;
        sleep 10000 - ( 1000*.round );
    }
    .@count = getmapusers("quiz_02");
    if ( !.@count )
        announce "Bombring: No one survived the bombrings.",bc_all,0x0ceedb;
    else if ( .@count ) {
        .@size = getmapunits(BL_PC,"quiz_02",.@aid);
        if ( .@size > 1 ) announce "A lot players has won the Bombring Event.",bc_all,0x0ceedb;
        for ( .@i = 0; .@i < getarraysize(.@aid); .@i++) {
            attachrid .@aid[.@i];
            if ( .@size == 1 ) announce strcharinfo(0)+" has won the Bombring Event.",bc_all,0x0ceedb;
            if ( $event_options&1 ) {
                for ( .@j = 0; .@j < $event_item_arr; .@j += 2 )
                    getitem $event_item_reward[.@j], $event_item_reward[.@j+1];
            }
            if ( $event_options&2 ) {
                setd $event_var$, getd($event_var$)+$event_var_gain;
                dispbottom "You gained "+$event_var_gain+" "+$event_var_name$+". You now have "+getd($event_var$)+" "+$event_var_name$+".";
            }
        }
        detachrid;
    }
    .start = false;
    sleep 5000;
    mapwarp "quiz_02","prontera",rand(148,163),rand(167,186);
    end;
    
OnPCDieEvent:
    if ( .start && strcharinfo(3) == "quiz_02" )
        warp "prontera",rand(148,163),rand(167,186);
    end;
}

// Dice Event

-    script    Event_Dice    -1,{
OnInit:        
    // Mapflags
    setarray .@mapflag,
        mf_nowarp,
        mf_nowarpto,
        mf_noskill,
        mf_noteleport,
        mf_nomemo,
        mf_nosave,
        mf_noicewall,
        mf_nobranch,
        mf_noreturn;
        
    for ( .@i = 0; .@i < getarraysize(.@mapflag); .@i++)
        setmapflag "quiz_02", .@mapflag[.@i];
    end;

OnStart:
    if ( .start ) end;
    .start = 1;
    for(.@i = 1;.@i <= 4;.@i++) {
        disablenpc "Back#"+.@i;
        disablenpc "Box "+.@i;
    }
    announce "Dice: We are going to have a Dice event.",0;
    sleep 10000;
    announce "Dice: For those who wants to join, use @eventjoin",0;
    sleep 10000;
    announce "Dice: After 1 Minute Event will close.",0;
    sleep 10000;
    announce "Dice: So please if you want to join. use @eventjoin",0;
    sleep 60000;
    announce "Dice: The entry to the event is now closed.",bc_all,0x0ceedb;
    if ( !getmapusers("quiz_02") ) {
        announce "Dice: Not enough participants.",bc_all,0x0ceedb;
        .start = false;
        end;
    }
    .start = 2;
    sleep 3500;
    mapannounce "quiz_02","We're about to begin the event.",bc_map,0x0ceedb;
    sleep 2500;
    mapannounce "quiz_02","The rules are simple.",bc_map,0x0ceedb;
    sleep 2500;
    mapannounce "quiz_02","You'll have to enter one of the 4 avaiaible boxes.",bc_map,0x0ceedb;
    sleep 2500;
    mapannounce "quiz_02","Then a four sides dice will be thrown. The number it shows will be the saved number.",bc_map,0x0ceedb;
    sleep 2500;
    mapannounce "quiz_02","Remember to enter the boxes!",bc_map,0x0ceedb;
    sleep 2000;
    mapannounce "quiz_02","That's all.Let's begin!",bc_map,0x0ceedb;
    sleep 3000;
    while(!.@end && .start && .@rounds < 5) {
        for(.@i = 1;.@i <= 4;.@i++) {
            enablenpc "Back#"+.@i;
            enablenpc "Box "+.@i;
        }
        sleep 1500;
        mapannounce "quiz_02","The dice will soon be thrown. Enter the desired box clicking the metalic number inside them.",bc_map,0x0ceedb;
        sleep 20000;
        for(.@i = 5;.@i > 0;.@i--) {
            mapannounce "quiz_02",.@i+"...",bc_map,0x0ceedb;
            sleep 990;
        }
        for(.@i = 1;.@i <= 4;.@i++) {
            disablenpc "Back#"+.@i;
            disablenpc "Box "+.@i;
        }
        areawarp "quiz_02",32,95,79,76,"prontera",rand(148,163),rand(167,186);
        areawarp "quiz_02",80,85,80,76,"prontera",rand(148,163),rand(167,186);
        areawarp "quiz_02",31,85,31,76,"prontera",rand(148,163),rand(167,186);
        .@n = rand(1,4);
        mapannounce "quiz_02","Time! The dice shows the number "+.@n+".",bc_map,0x0ceedb;
        setarray .@cords1[0],33,41;
        setarray .@cords2[0],45,53;
        setarray .@cords3[0],57,65;
        setarray .@cords4[0],69,77;
        for(.@i = 1;.@i <= 4;.@i++) {
            if(.@i != .@n)
                areawarp "quiz_02",getd(".@cords"+.@i+"[0]"),52,getd(".@cords"+.@i+"[1]"),73,"prontera",rand(148,163),rand(167,186);
        }
        sleep 3000;
        .@players = getmapusers("quiz_02");
        if(.@players <= 3 && .start && .@players) {
            mapannounce "quiz_02","The event is now over! Winners, enjoy your prizes!",bc_map,0x0ceedb;
            .@size = getmapunits(BL_PC,"quiz_02",.@players);
            .start = false;
            for(.@i = 0;.@i < .@size;.@i++) {
                attachrid .@players[.@i];
                announce strcharinfo(0)+" has won the Dice Event.",bc_all,0x0ceedb;
                if ( $event_options&1 ) {
                    for ( .@j = 0; .@j < $event_item_arr; .@j += 2 )
                        getitem $event_item_reward[.@j], $event_item_reward[.@j+1];
                }
                if ( $event_options&2 ) {
                    setd $event_var$, getd($event_var$)+$event_var_gain;
                    dispbottom "You gained "+$event_var_gain+" "+$event_var_name$+". You now have "+getd($event_var$)+" "+$event_var_name$+".";
                }            
                warp "payon",178,100;
            }
        } else if( !.@players ) {
            .@end = true;
            .start = false;
            announce "There was no winner on the Dice Event.",bc_all,0x0ceedb;
        } else {
            mapannounce "quiz_02","There's no clear winners yet, let's roll the dice again.",bc_map,0x0ceedb;
        }
        .@rounds++;
    }
    if(.@rounds >= 5) {
        mapannounce "quiz_02","There were no winner clear in all of the event. The event is now over.",bc_map,0x0ceedb;
        .start = false;
    }
    end;

}

quiz_02,37,80,3    script    Box 1    HIDDEN_NPC,{
    warp "quiz_02",rand(33,41),rand(52,73);
    end;

}

quiz_02,49,80,3    script    Box 2    HIDDEN_NPC,{
    warp "quiz_02",rand(45,53),rand(52,73);
    end;
}

quiz_02,61,80,3    script    Box 3    HIDDEN_NPC,{
    warp "quiz_02",rand(57,65),rand(52,73);
    end;
}

quiz_02,73,80,3    script    Box 4    HIDDEN_NPC,{
    warp "quiz_02",rand(69,77),rand(52,73);
    end;
}

quiz_02,55,90,3    script    Back to Payon#dice    4_BULLETIN_BOARD2,{
    warp "payon",157,227;
    end;
}

quiz_02,37,64,3    script    Back#1    4_BULLETIN_BOARD2,{
    warp "quiz_02",55,76;
    end;
}

quiz_02,49,64,3    duplicate(Back#1)    Back#2    4_BULLETIN_BOARD2
quiz_02,61,64,3    duplicate(Back#1)    Back#3    4_BULLETIN_BOARD2
quiz_02,73,64,3    duplicate(Back#1)    Back#4    4_BULLETIN_BOARD2

// Last Man Standing

-    script    Event_LMS    -1,{
OnInit:    
    // Mapflags
    setarray .@mapflag,
        mf_nowarp,
        mf_pvp_noguild,
        mf_pvp_noparty,
        mf_partylock,    
        mf_nowarpto,
        mf_noteleport,
        mf_nomemo,
        mf_nosave,
        mf_noicewall,
        mf_nobranch,
        mf_noreturn;
        
    for ( .@i = 0; .@i < getarraysize(.@mapflag); .@i++)
        setmapflag "06guild_01", .@mapflag[.@i];
        
    end;

OnStart:
    if ( .start ) end;
    .start = 1;
    pvpoff "06guild_01";
    announce "LMS: We are going to have a Last Man Standing event.",0;
    sleep 10000;
    announce "LMS: For those who wants to join, use @eventjoin",0;
    sleep 10000;
    announce "LMS: After 1 Minute Event will close.",0;
    sleep 10000;
    announce "LMS: So please if you want to join. use @eventjoin",0;
    sleep 60000;
    announce "LMS: The entry to the event is now closed.",bc_all,0x0ceedb;
    if ( getmapusers("06guild_01") < 2 ) {
        announce "LMS: Not enough participants.",bc_all,0x0ceedb;
        .start = false;
        end;
    }
    .start = 2;
    sleep 3500;
    mapannounce "06guild_01","We're about to begin the event.",bc_map,0x0ceedb;
    sleep 2500;
    mapannounce "06guild_01","The rules are simple.",bc_map,0x0ceedb;
    sleep 2500;
    mapannounce "06guild_01","Kill everyone in the map.",bc_map,0x0ceedb;
    sleep 2500;
    mapannounce "06guild_01","Last Man Standing wins!",bc_map,0x0ceedb;
    sleep 2000;
    mapannounce "06guild_01","That's all. Let's begin.",bc_map,0x0ceedb;
    sleep 3000;
    for (.@i = 10; .@i > 0; .@i--) {
        mapannounce "06guild_01", "LMS: -- "+.@i+" --",bc_map,0x0ceedb;
        sleep 1000;
    }
    mapannounce "06guild_01", "LMS: Fight! ",bc_map,0x0ceedb;
    pvpon "06guild_01";
    .timer = 0;
    initnpctimer;
    end;
    
OnTimer5000: // check every 5 secs..
    .timer++;
    .@size = getmapusers("06guild_01");
    if ( .@size > 1 && .timer == 6 ) {
        .timer = 0;
        mapannounce "06guild_01", "LMS: "+ .@size +" players left..", bc_blue;
    } 
    else if ( .@size <= 1 )
        donpcevent strnpcinfo(3)+"::OnEndEvent";
    setnpctimer 0;
    end;
    
OnEndEvent:
    stopnpctimer;
    .start = false;
    pvpoff "06guild_01";
    mapannounce "06guild_01", "LMS: Event ended!",bc_map,0x0ceedb;
    sleep 5000;
    .@size = getmapunits(BL_PC,"06guild_01",.@aid);
    if ( .@size == 0 ) {
        announce "LMS: No winners.",0;
        end;
    }
    attachrid .@aid;
    announce strcharinfo(0)+" has won the Last Man Standing Event.",bc_all,0x0ceedb;
    if ( $event_options&1 ) {
        for ( .@j = 0; .@j < $event_item_arr; .@j += 2 )
            getitem $event_item_reward[.@j], $event_item_reward[.@j+1];
    }
    if ( $event_options&2 ) {
        setd $event_var$, getd($event_var$)+$event_var_gain;
        dispbottom "You gained "+$event_var_gain+" "+$event_var_name$+". You now have "+getd($event_var$)+" "+$event_var_name$+".";
    }                
    warp "payon",178,100;
    end;
    
OnPCDieEvent:
    if ( .start && strcharinfo(3) == "06guild_01" ) {
        warp "payon",178,100;
        .@size = getmapusers("06guild_01");
        if ( .@size > 1 )
            mapannounce "06guild_01", "LMS: "+ .@size +" players left..", bc_blue;
        else if ( .@size <= 1 )
            donpcevent strnpcinfo(3)+"::OnEndEvent";
    }
    end;
    
}

// Novice V Zombie

-    script    Event_NvZ    -1,{
OnInit:    
    // Mapflags
    setarray .@mapflag,
        mf_nowarp,
        mf_nowarpto,
        mf_noskill,
        mf_noteleport,
        mf_nomemo,
        mf_nosave,
        mf_noicewall,
        mf_nobranch,
        mf_noreturn;

        
    for ( .@i = 0; .@i < getarraysize(.@mapflag); .@i++)
        setmapflag "quiz_01", .@mapflag[.@i];
    end;

OnStart:
    if ( .start ) end;
    .start = 1;
    killmonsterall "quiz_01";
    announce "NvZ: We are going to have a Novice Vs. Zombie event.",0;
    sleep 10000;
    announce "NvZ: For those who wants to join, use @eventjoin",0;
    sleep 10000;
    announce "NvZ: After 1 Minute Event will close.",0;
    sleep 10000;
    announce "NvZ: So please if you want to join. use @eventjoin",0;
    sleep 60000;
    announce "NvZ: The entry to the event is now closed.",bc_all,0x0ceedb;
    if ( getmapusers("quiz_01") <= 1 ) {
        announce "NvZ: Not enough participants.",bc_all,0x0ceedb;
        .start = false;
        mapwarp "quiz_01", "prontera", 150, 180; // warp out.
        end;
    }
    .start = 2;
    sleep 3500;
    mapannounce "quiz_01","We're about to begin the event.",bc_map,0x0ceedb;
    sleep 2500;
    mapannounce "quiz_01","The rules are simple.",bc_map,0x0ceedb;
    sleep 2500;
    mapannounce "quiz_01","Zombies will be spawned in the map.",bc_map,0x0ceedb;
    sleep 2500;
    mapannounce "quiz_01","and will apear every 20 seconds.",bc_map,0x0ceedb;
    sleep 2000;
    mapannounce "quiz_01","Last man surviving wins.",bc_map,0x0ceedb;
    sleep 2000;
    mapannounce "quiz_01","That's all. Let's begin.",bc_map,0x0ceedb;
    sleep 3000;
    monster "quiz_01",42,369,"Zombie",1036,4;
    initnpctimer;
    end;
    
OnTimer20000: // 20 seconds timer and also player check on how many left in map
    monster "quiz_01",42,369,"Zombie",1036,10;
    setnpctimer 0;
    end;
    
OnPCDieEvent:
    if ( .start && strcharinfo(3) == "quiz_01" ) {
        warp "prontera",rand(148,163),rand(167,186);
        if ( getmapusers("quiz_01") == 1 ) {
            stopnpctimer;
            killmonsterall "quiz_01";
            .@size = getmapunits(BL_PC,"quiz_01",.@aid);
            .start = false;
            attachrid .@aid;
            announce strcharinfo(0)+" has won the Novice v Zombie Event.",bc_all,0x0ceedb;
            if ( $event_options&1 ) {
                for ( .@j = 0; .@j < $event_item_arr; .@j += 2 )
                    getitem $event_item_reward[.@j], $event_item_reward[.@j+1];
            }
            if ( $event_options&2 ) {
                setd $event_var$, getd($event_var$)+$event_var_gain;
                dispbottom "You gained "+$event_var_gain+" "+$event_var_name$+". You now have "+getd($event_var$)+" "+$event_var_name$+".";
            }                
            warp "prontera",rand(148,163),rand(167,186);
            end;
        }
    }
    end;
}

// Poring Catcher

-    script    Poring_Catcher    -1,{
OnInit:    
    // Mapflags
    setarray .@mapflag,
        mf_nowarp,
        mf_nowarpto,
        mf_noskill,
        mf_noloot,
        mf_noteleport,
        mf_nomemo,
        mf_nosave,
        mf_noicewall,
        mf_nobranch,
        mf_noreturn;
        
    for ( .@i = 0; .@i < getarraysize(.@mapflag); .@i++)
        setmapflag "poring_w01", .@mapflag[.@i];
    end;

OnStart:
    if ( .start ) end;
    .start = 1;
    announce "Poring Catcher: We are going to have a Poring Catcher event.",0;
    sleep 10000;
    announce "Poring Catcher: For those who wants to join, use @eventjoin",0;
    sleep 10000;
    announce "Poring Catcher: After 1 Minute Event will close.",0;
    sleep 10000;
    announce "Poring Catcher: So please if you want to join. use @eventjoin",0;
    sleep 60000;
    announce "Poring Catcher: The entry to the event is now closed.",bc_all,0x0ceedb;
    .start = 2;
    sleep 3500;
    if( !getmapusers("poring_w01") ) {
        announce "Poring Catcher: Not enough participants in the Event.",bc_all,0x0ceedb;
        sleep 2500;
        announce "Poring Catcher: Event will be halted.",bc_all,0x0ceedb;
        .start = false;
        end;
    }
    mapannounce "poring_w01","We're about to begin the event.",bc_map,0x0ceedb;
    sleep 2500;
    mapannounce "poring_w01","The rules are simple.",bc_map,0x0ceedb;
    sleep 2500;
    mapannounce "poring_w01","In a few seconds I'm going to spawn tons of porings..",bc_map,0x0ceedb;
    sleep 2500;
    mapannounce "poring_w01","..All you need to do is kill the Poring with the right name..",bc_map,0x0ceedb;
    sleep 2500;
    mapannounce "poring_w01","..Which would be Poring.",bc_map,0x0ceedb;
    sleep 2000;
    mapannounce "poring_w01","If you kill the wrong one, you're out!",bc_map,0x0ceedb;
    sleep 2000;
    mapannounce "poring_w01","That's all. Let's begin.",bc_map,0x0ceedb;
    sleep 3000;
    areamonster "poring_w01",84,119,124,90,"Poring",1002,1,strnpcinfo(0)+"::OnMobKilledWin";
    areamonster "poring_w01",84,119,124,90,"Poking",1002,5,strnpcinfo(0)+"::OnMobKilled";
    areamonster "poring_w01",84,119,124,90,"Poiring",1002,5,strnpcinfo(0)+"::OnMobKilled";
    areamonster "poring_w01",84,119,124,90,"Poling",1002,5,strnpcinfo(0)+"::OnMobKilled";
    areamonster "poring_w01",84,119,124,90,"Porng",1002,5,strnpcinfo(0)+"::OnMobKilled";
    areamonster "poring_w01",84,119,124,90,"por1ng",1002,5,strnpcinfo(0)+"::OnMobKilled";
    areamonster "poring_w01",84,119,124,90,"P0ring",1002,5,strnpcinfo(0)+"::OnMobKilled";
    areamonster "poring_w01",84,119,124,90,"Poreng",1002,5,strnpcinfo(0)+"::OnMobKilled";
    areamonster "poring_w01",84,119,124,90,"Puring",1002,5,strnpcinfo(0)+"::OnMobKilled";
    areamonster "poring_w01",84,119,124,90,"Poriing",1002,5,strnpcinfo(0)+"::OnMobKilled";
    areamonster "poring_w01",84,119,124,90,"Boring",1002,5,strnpcinfo(0)+"::OnMobKilled";
    areamonster "poring_w01",84,119,124,90,"Powring",1002,5,"::OnMobKilled";
    areamonster "poring_w01",84,119,124,90,"Kill me to win!",1002,5,strnpcinfo(0)+"::OnMobKilled";
    end;

OnMobKilled:
    dispbottom "You killed the wrong Poring! Yerrrrrrrrrrrr out!";
    warp "payon",178,100;
    sleep 5000;
    if ( !getmapusers("poring_w01") ) {
        .start = false;
        killmonsterall "poring_w01";
        announce "Poring Catcher: No one won the Poring Catcher Event!.",bc_all,0x0ceedb;
    }
    end;
    
OnMobKilledWin:
    announce strcharinfo(0)+" won the Poring Catcher Event!",bc_all,0xFF7F50;
    if ( $event_options&1 ) {
        for ( .@j = 0; .@j < $event_item_arr; .@j += 2 )
            getitem $event_item_reward[.@j], $event_item_reward[.@j+1];
    }
    if ( $event_options&2 ) {
        setd $event_var$, getd($event_var$)+$event_var_gain;
        dispbottom "You gained "+$event_var_gain+" "+$event_var_name$+". You now have "+getd($event_var$)+" "+$event_var_name$+".";
    }
    killmonsterall "poring_w01";
    sleep 5000;
    mapwarp "poring_w01","payon",178,100;
    .start = false;
    end;    
}

poring_w01,105,123,3    script    Back to Payon    4_BULLETIN_BOARD2,{
    warp "payon",178,100;
    end;
}

// Poring Hunter https://rathena.org/board/topic/121969-rporing-hunter-event/#comment-370418

-    script    Poring_Hunter    FAKE_NPC,{
OnInit:
    // Event duration default: 3 mins.
    .duration = 3;

    // Note : spawn counts would be multiplied by number of participants. ( count * player count )
    // if you dont want it, remove the calculation below.
    .count[0] = 20; // poring count
    .count[1] = 10; // drops count
    .count[2] = 15; // poporing count
    
    // Mapflags
    setarray .@mapflag,
        mf_nowarp,
        mf_nowarpto,
        mf_noskill,
        mf_noloot,
        mf_noteleport,
        mf_nomemo,
        mf_nosave,
        mf_noicewall,
        mf_nobranch,
        mf_noreturn;

        
    for ( .@i = 0; .@i < getarraysize(.@mapflag); .@i++)
        setmapflag "quiz_02", .@mapflag[.@i];
    end;

OnStart:
    if ( .start ) end;
    pvpoff "pvp_n_1-2";
    killmonsterall "pvp_n_1-2";
    .start = 1;
    .cur_time = 0;
    announce "Poring Hunter: We are going to have a Poring Hunter event.",0;
    sleep 10000;
    announce "Poring Hunter: For those who wants to join, use @eventjoin",0;
    sleep 10000;
    announce "Poring Hunter: After 1 Minute Event will close.",0;
    sleep 10000;
    announce "Poring Hunter: So please if you want to join. use @eventjoin",0;
    sleep 60000;
    announce "Poring Hunter: The entry to the event is now closed.",bc_all,0x0ceedb;
    .@player = getmapusers("pvp_n_1-2");
    if ( .@player < 2 ) {
        announce "Poring Hunter : Not enough participants.", bc_all,0x0ceedb;
        goto OnEnd;
        end;
    }
    announce "Poring Hunter : The portal for the event has been closed, the event has started, good luck to all players!", bc_all;
    .start = 2;
    mapannounce "pvp_n_1-2","We're about to begin the event.",bc_map,0x0ceedb;
    sleep 2500;
    mapannounce "pvp_n_1-2","Porings grant 1 point when killed, Drops 5 points, Poporings -10 points.",bc_map,0x0ceedb;
    sleep 2500;
    mapannounce "pvp_n_1-2","You will have "+.duration+" minutes to get as many points as possible.",bc_map,0x0ceedb;
    sleep 2500;
    mapannounce "pvp_n_1-2","The Player who gets the most points within the time alloted will be the winner of the event.",bc_map,0x0ceedb;
    sleep 2500;
    mapannounce "pvp_n_1-2","That's all. Let's begin.",bc_map,0x0ceedb;
    sleep 2000;
    // NOTE : if you wish not to multiply the spawn to participants, remove < *.@player > on all mob spawns.
    monster "pvp_n_1-2", 0, 0, "Poring", 1002, .count[0]*.@player, strnpcinfo(0)+"::OnKillPoring";
    monster "pvp_n_1-2", 0, 0, "Drops", 1113, .count[1]*.@player, strnpcinfo(0)+"::OnKillDrops";
    monster "pvp_n_1-2", 0, 0, "Poporing", 1031, .count[2]*.@player, strnpcinfo(0)+"::OnKillPoporing";
    initnpctimer;
    end;
    
OnKillPoring: callsub OnKillMob, 1002, "Poring", "OnKillPoring", 1;
OnKillDrops: callsub OnKillMob, 1113, "Drops", "OnKillDrops", 5;
OnKillPoporing: callsub OnKillMob, 1031, "Poporing", "OnKillPoporing", -10;
OnKillMob:
    .@mobid = getarg(0);
    .@name$ = getarg(1);
    .@event$ = getarg(2);
    .@val = getarg(3);
    @phunter_points += .@val;
    monster "pvp_n_1-2",0,0,.@name$,.@mobid,1,strnpcinfo(0)+"::"+.@event$;
    dispbottom "You have "+ @phunter_points +" Point(s).";
    end;    

OnTimer60000:
    .cur_time++;
    if ( .cur_time < .duration ) {
        mapannounce "pvp_n_1-2", "You have "+( .duration - .cur_time )+" min(s) left.", bc_blue|bc_map;
        setnpctimer 0;
        end;
    }
    stopnpctimer;
    killmonsterall "pvp_n_1-2";
    .@count = getmapunits(BL_PC,"pvp_n_1-2",.@aid[0]);
    freeloop(true);
    for ( .@i = 0; .@i < .@count; .@i++ ) {
        attachrid(.@aid[.@i]);
        if ( @phunter_points > .most_points ) {
            .most_points = @phunter_points;
            .win_aid[0] = getcharid(3);
            .win_name$[0] = strcharinfo(0);
        } else if ( @phunter_points == .most_points && @phunter_points > 0 ) {
            .win_aid[getarraysize(.win_aid)] = getcharid(3);
            .win_name$[getarraysize(.win_name$)] = strcharinfo(0);
        }
        detachrid;
    }
    freeloop(false);
    .@size = getarraysize(.win_aid);
    if ( .@size > 1 )
        announce "Poring Hunter : The event is over, and we have "+.@size+" winners having "+.most_points+" points each! Congratulations!", bc_all,0xFF7F50;
    else if ( .@size == 1 )
        announce "Poring Hunter : The event is over, and the winner is ["+.win_name$+"] with "+.most_points+" points! Congratulations!", bc_all,0xFF7F50;
    else 
        announce "Poring Hunter : The event is over, and there are no winners.", bc_all,0x0ceedb;
    if ( .@size ) { 
        for ( .@i = 0; .@i < .@size; .@i++ ) { 
            attachrid(.win_aid[.@i]);
            if ( $event_options&1 ) {
                for ( .@j = 0; .@j < $event_item_arr; .@j += 2 )
                    getitem $event_item_reward[.@j], $event_item_reward[.@j+1];
            }
            if ( $event_options&2 ) {
                setd $event_var$, getd($event_var$)+$event_var_gain;
                dispbottom "You gained "+$event_var_gain+" "+$event_var_name$+". You now have "+getd($event_var$)+" "+$event_var_name$+".";
            }
            dispbottom "Here is your reward from Poring Hunter event.";
            detachrid;
        }
    }
    OnEnd:
    mapannounce "pvp_n_1-2", "Warping out in few sec..", bc_blue|bc_map;
    .most_points = .start = false;
    deletearray .win_aid;
    deletearray .win_name$;
    sleep 5000;
    mapwarp "pvp_n_1-2","prontera",rand(148,163),rand(167,186);
    pvpon "pvp_n_1-2";
    end;
}

 

Link to comment
Share on other sites

  • 0

  • Group:  Members
  • Topic Count:  176
  • Topics Per Day:  0.14
  • Content Count:  666
  • Reputation:   9
  • Joined:  12/04/20
  • Last Seen:  

5 hours ago, pajodex said:

you can just add a pvp_noparty mapflag..
 

*pvp
*pvp_noparty
*pvp_noguild
*pvp_nocalcrank

Enables Player vs. Player mode on a map and applies the corresponding damage adjustments.
'pvp_noparty' will ignore party alliances.
'pvp_noguild' will ignore guild alliances.
'pvp_nocalcrank' will disable calculation of PvP rankings.

 

i already tried this but still the party can enter and they cant attack each other

Link to comment
Share on other sites

  • 0

  • Group:  Members
  • Topic Count:  123
  • Topics Per Day:  0.03
  • Content Count:  642
  • Reputation:   82
  • Joined:  04/07/14
  • Last Seen:  

12 hours ago, GM Winter said:

hello ive try to put it in the script i got a lot of errors dont know where to add this line heres the script 

 

 

Find OnJoinEvent:

add before sc_end SC_ALL;

 

	if(getcharid(1)) {
		dispbottom("Players with a party can't enter!");
		end;
	}

It should be like: 

OnJoinEvent:
    mes "[ Event Status ]";
    mes "Event are as follows : ";
    next;
    switch(select(
        "Dice Event - "+ ((getvariableofnpc(.start,"Event_Dice") == 1) ? "^0000ffJoin Event":((getvariableofnpc(.start,"Event_Dice") == 2) ? "^0000ffEvent On-Going":"^ff0000Not Available"))+"^000000",
        "Last Man Standing - "+ ((getvariableofnpc(.start,"Event_LMS") == 1) ? "^0000ffJoin Event":((getvariableofnpc(.start,"Event_LMS") == 2) ? "^0000ffEvent On-Going":"^ff0000Not Available"))+"^000000",
        "Poring Catcher - "+ ((getvariableofnpc(.start,"Poring_Catcher") == 1) ? "^0000ffJoin Event":((getvariableofnpc(.start,"Poring_Catcher") == 2) ? "^0000ffEvent On-Going":"^ff0000Not Available"))+"^000000"
    )) {
        
    case 1:
        .@start = getvariableofnpc(.start,"Event_Dice");
        .@map$ = "quiz_02"; .@x = 55; .@y = 87;
        break;
        
    case 2:
        .@start = getvariableofnpc(.start,"Event_LMS");
        .@map$ = "06guild_01"; .@x = 0; .@y = 0;
        break;
        
    case 3:
        .@start = getvariableofnpc(.start,"Poring_Catcher");
        .@map$ = "poring_w01"; .@x = 100; .@y = 100;
        break;
    }    
    if ( !.@start ) {
        mes "Event is not available.";
        close;
    } else if ( .@start == 2 ) {
        mes "Event is on-going";
        close;
    }
	if(getcharid(1)) {
		dispbottom("Players with a party can't enter!");
		end;
	}
    sc_end SC_ALL;
    percentheal 100,100;
    warp .@map$, .@x, .@y;
    end;

 

  • Upvote 1
Link to comment
Share on other sites

  • 0

  • Group:  Members
  • Topic Count:  176
  • Topics Per Day:  0.14
  • Content Count:  666
  • Reputation:   9
  • Joined:  12/04/20
  • Last Seen:  

1 hour ago, Gidz Cross said:

Find OnJoinEvent:

add before sc_end SC_ALL;

 

	if(getcharid(1)) {
		dispbottom("Players with a party can't enter!");
		end;
	}

It should be like: 

OnJoinEvent:
    mes "[ Event Status ]";
    mes "Event are as follows : ";
    next;
    switch(select(
        "Dice Event - "+ ((getvariableofnpc(.start,"Event_Dice") == 1) ? "^0000ffJoin Event":((getvariableofnpc(.start,"Event_Dice") == 2) ? "^0000ffEvent On-Going":"^ff0000Not Available"))+"^000000",
        "Last Man Standing - "+ ((getvariableofnpc(.start,"Event_LMS") == 1) ? "^0000ffJoin Event":((getvariableofnpc(.start,"Event_LMS") == 2) ? "^0000ffEvent On-Going":"^ff0000Not Available"))+"^000000",
        "Poring Catcher - "+ ((getvariableofnpc(.start,"Poring_Catcher") == 1) ? "^0000ffJoin Event":((getvariableofnpc(.start,"Poring_Catcher") == 2) ? "^0000ffEvent On-Going":"^ff0000Not Available"))+"^000000"
    )) {
        
    case 1:
        .@start = getvariableofnpc(.start,"Event_Dice");
        .@map$ = "quiz_02"; .@x = 55; .@y = 87;
        break;
        
    case 2:
        .@start = getvariableofnpc(.start,"Event_LMS");
        .@map$ = "06guild_01"; .@x = 0; .@y = 0;
        break;
        
    case 3:
        .@start = getvariableofnpc(.start,"Poring_Catcher");
        .@map$ = "poring_w01"; .@x = 100; .@y = 100;
        break;
    }    
    if ( !.@start ) {
        mes "Event is not available.";
        close;
    } else if ( .@start == 2 ) {
        mes "Event is on-going";
        close;
    }
	if(getcharid(1)) {
		dispbottom("Players with a party can't enter!");
		end;
	}
    sc_end SC_ALL;
    percentheal 100,100;
    warp .@map$, .@x, .@y;
    end;

 

thank you so much sir! God bless you

Link to comment
Share on other sites

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.

×
×
  • Create New...