Jump to content

Atomik

Members
  • Posts

    2
  • Joined

  • Last visited

Posts posted by Atomik

  1. 13 hours ago, AnnieRuru said:

    ok let me rephrase that sentence ...
    in rathena .......

    
    34,Instance ONE,3600,15,guild_vs1,49,49
    35,Instance TWO,3600,15,guild_vs2,49,49
    
    prontera,150,180,0	script	Check Instance	1_F_MARIA,{
    OnClick:
    	dispbottom strcharinfo(3); 
    	dispbottom instance_id() +""; // this line sux ... if you only have 1 instance attached then its ok, but if more than one ...
    	end;
    OnInit:
    	bindatcmd "test", strnpcinfo(0)+"::OnClick";
    	end;
    }
    
    prontera,155,180,0	script	Instance ONE	1_F_MARIA,{
    	if ( getstrlen( instance_mapname("guild_vs1") ) ) {
    		instance_enter "Instance ONE";
    		end;
    	}
    	if ( instance_create( "Instance ONE", IM_PARTY ) < 0 ) {
    		mes "failed to create instance";
    		close;
    	}
    	instance_enter "Instance ONE";
    	end;
    }
    
    prontera,158,180,0	script	Instance TWO	1_F_MARIA,{
    	if ( getstrlen( instance_mapname("guild_vs2") ) ) {
    		instance_enter "Instance TWO";
    		end;
    	}
    	if ( instance_create( "Instance TWO", IM_GUILD ) < 0 ) {
    		mes "failed to create instance";
    		close;
    	}
    	instance_enter "Instance TWO";
    	end;
    }

    yes, one for party, another one for guild

    now here's the scenario ...

    let's say Player A same party with Player C, and Player A register the Instance ONE for party
    Player B same guild with Player C, and Player B register the Instance TWO for guild

    Player C has the choice to go in both instance, since Player C has meet both requirement

    my test result is ... it seems rathena has bug in this case, Player C allow to go in Party type only


    test again in hercules ... no problem, Player C can go inside both instance

    
    prontera,150,180,0	script	Check Instance	1_F_MARIA,{
    OnClick:
    	dispbottom strcharinfo(3);
    	dispbottom instance_id() +""; // this script command is useless in hercules, always return -1 on non-instanced npc. An instanced npc don't need to use this script command anyway
    	dispbottom has_instance2("guild_vs1") +"";
    	dispbottom has_instance2("guild_vs2") +"";
    	end;
    OnInit:
    	bindatcmd "test", strnpcinfo(0)+"::OnClick";
    	end;
    }
    
    prontera,155,180,0	script	Instance ONE	1_F_MARIA,{
    	if ( has_instance2("guild_vs1") >= 0 ) {
    		warp has_instance("guild_vs1"), 49,49;
    		end;
    	}
    	if ( ( .@ins = instance_create( "Instance ONE", getcharid(CHAR_ID_PARTY), IOT_PARTY ) ) < 0 ) {
    		mes "error : "+ .@ins;
    		close;
    	}
    	if ( !getstrlen( instance_attachmap( "guild_vs1", .@ins, true, .@ins +"INS1" ) ) ) {
    		mes "error : 5";
    		instance_destroy .@ins;
    		close;
    	}
    	instance_set_timeout 3600, 15, .@ins;
    	instance_init .@ins;
    	warp has_instance("guild_vs1"), 49,49;
    	end;
    }
    
    prontera,158,180,0	script	Instance TWO	1_F_MARIA,{
    	if ( has_instance2("guild_vs2") >= 0 ) {
    		warp has_instance("guild_vs2"), 49,49;
    		end;
    	}
    	if ( ( .@ins = instance_create( "Instance ONE", getcharid(CHAR_ID_GUILD), IOT_GUILD ) ) < 0 ) {
    		mes "error : "+ .@ins;
    		close;
    	}
    	if ( !getstrlen( instance_attachmap( "guild_vs2", .@ins, true, .@ins +"INS2" ) ) ) {
    		mes "error : 5";
    		instance_destroy .@ins;
    		close;
    	}
    	instance_set_timeout 3600, 15, .@ins;
    	instance_init .@ins;
    	warp has_instance("guild_vs2"), 49,49;
    	end;
    }

     


    Thanks alot ❤️

×
×
  • Create New...