Jump to content
  • 0

[Instance] what i'm doing wrong ?


legolasx2

Question


  • Group:  Members
  • Topic Count:  2
  • Topics Per Day:  0.00
  • Content Count:  4
  • Reputation:   0
  • Joined:  02/15/17
  • Last Seen:  

When i talk to the npc the mobs dont respawn :(

Sorry noob scripter here

 

 

//===== rAthena Script =======================================


//= Sample: Instancing
//===== By: ==================================================
//= Euphy
//===== Last Updated: ========================================
//= 20170303
//===== Description: ========================================= 
//= Contains elements of a basic Single Char instance script.
//============================================================

// Before running this script, add the entry below to
// 'db/(pre-)re/instance_db.txt':
// 20,Abyss Lake Instance,3600,300,abyss_03,160,155

// Instance Creation
//============================================================
prontera,157,182,6    script    Sample Instance    101,{
    .@instance$ = "Raid lvl30";
        
    if (instance_id()) {  // ignore the console debug message (harmless)
        mes "[Sample Instance]";
        mes "You are already part of an instance.";
        next;
        switch(select("Enter Instance.:Cancel.")) {
        case 1:
            break;
        case 2:
            mes "[Sample Instance]";
            mes "You don't want to try again?";
            emotion e_sob;
            close;
        }
    } else {
        mes "[Sample Instance]";
        mes "Would you like to try the sample instance in Abyss Lake 3?";
        next;
        switch(select("Create Instance.:Cancel.")) {
        case 1:
            .@create = instance_create(.@instance$, IM_PARTY);
            if (.@create < 0) {
                mes "[Sample Instance]";
                switch (.@create) {
                    case -1: mes "ERROR: Invalid type."; debugmes "Invalid instance type for ID " + instance_id(); break;
                    case -2: mes "ERROR: Char not found."; debugmes "Char/Party/Guild not found for ID " + instance_id(); break;
                    case -3: mes "ERROR: Instance already exists."; break;
                    case -4: mes "ERROR: No free instances."; debugmes "No free instances. Check MAX_INSTANCE"; break;
                }
                mes " ";
                mes "Instance creation ^FF0000failed^000000.";
                emotion e_omg;
                close;
            }
            mes "[Sample Instance]";
            mes "Instance created.";
            mes " ";
            mes "Now entering the instance...";
            next;
            break;
        case 2:
            mes "[Sample Instance]";
            mes "Okay. Maybe next time!";
            close;
        }
    }
    .@enter = instance_enter(.@instance$);
    if (.@enter != 0) {
        mes "[Sample Instance]";
        switch (.@enter) {
            case 1: mes "ERROR: Looking for party on single char only instance."; break;
            case 2: mes "ERROR: Instance has been destroyed by Party Leader or because of the time limit."; break;
            case 3: mes "ERROR: Unknown error."; break;
        }
        mes " ";
        mes "Instance entry ^FF0000failed^000000.";
        emotion e_omg;
        close;
    }
    close;
}

// Instance Scripts
//============================================================
new_zone01,42,81,6    script    Instance NPC#start    101,{
    mes "[Instance NPC]";
    mes "Are you ready to begin?";
    next;
    switch(select("Yes.:No.")) {
    case 1:
        mes "[Instance NPC]";
        mes "Good luck.";
        close2;
        donpcevent instance_npcname("#ins_abyss03_mobs")+"::OnEnable";
        delwaitingroom;
        disablenpc instance_npcname(strnpcinfo(0));
        end;
    case 2:
        mes "[Instance NPC]";
        mes "Take your time.";
        close;
    }
    end;

OnInit:  // hide the NPC on the normal map
    disablenpc strnpcinfo(0);
    end;
OnInstanceInit:  // initialize the NPC when the instance is created
    disablenpc instance_npcname("abysslakedunwarp004");  // disable original warp portal (currently buggy)
    waitingroom "Click here to start!",0;
    end;
}

new_zone0,0,0,0    script    #ins_abyss03_mobs    -1,{
    end;
OnEnable:
    initnpctimer;
    end;
OnTimer1000:  //strnpcinfo(4) will retrieve the instanced map name
    mapannounce strnpcinfo(4),"Instance NPC: The Abyss Lake instance has begun.",bc_all;
    end;
OnTimer4000:
    mapannounce strnpcinfo(4),"Instance NPC: Smash the Treasure Chest in the center of the map for a prize.",bc_all;
    end;
OnTimer5000:
    stopnpctimer;

    // spawn mobs
    .@map$        = instance_mapname("new_zone");
    .@label$      = instance_npcname(strnpcinfo(0))+"::OnMyMobDead";
    .@label_boss$ = instance_npcname(strnpcinfo(0))+"::OnMyBossDead";
    monster .@map$,0,0,"Huge Poring",1002,20,.@label$,2;
    monster .@map$,0,0,"Huge Drops",1113,15,.@label$,2;
    monster .@map$,0,0,"Huge Poporing",1031,10,.@label$,2;
    monster .@map$,0,0,"Huge Marin",1242,10,.@label$,2;
    monster .@map$,0,0,"Tiny Zombie",1015,30,.@label$,1;
    monster .@map$,0,0,"Huge Mime Monkey",1585,2,.@label$,2;
    monster .@map$,145,111,"Treasure Chest",1732,1,.@label_boss$,2;
    end;
OnMyMobDead:  // normal mobs
    dispbottom "What am I doing? I should be attacking the Treasure Chest!";
    viewpoint 0,97,102,0,0xFF0000;
    switch (rand(6)) {  // for fun (:
        case 0: sc_start SC_STONE,5000,0; break;
        case 1: sc_start SC_FREEZE,5000,0; break;
        case 2: sc_start SC_STUN,5000,0; break;
        case 3: sc_start SC_SLEEP,5000,0; break;
        case 4: sc_start SC_CONFUSION,5000,0; break;
        case 5: sc_start SC_BLIND,5000,0; break;
    }
    end;
OnMyBossDead:  // treasure chest
    specialeffect2 EF_MVP;
    getitem 512,1; //Apple

    // trigger other events
    .@map$   = instance_mapname("new_zone");
    .@label$ = instance_npcname(strnpcinfo(0))+"::OnMyMobDead";
    killmonster .@map$,.@label$;
    mapannounce .@map$,"Instance NPC: Good work! Please speak to me as soon as possible.",bc_all;
    donpcevent instance_npcname("Instance NPC#finish")+"::OnEnable";
    end;
}

new_zone,139,116,4    script    Instance NPC#finish    101,{
    mes "[Instance NPC]";
    mes "Congratulations! You've finished the instance.";
    mes "I'll send you back to town now.";
    emotion e_no1;
    close2;
    warp "prontera",156,191;
    instance_destroy();
    end;

OnInit:
    disablenpc strnpcinfo(0);
    end;
OnInstanceInit:
    disablenpc instance_npcname(strnpcinfo(0));
    end;
OnEnable:
    enablenpc instance_npcname(strnpcinfo(0));
    specialeffect EF_HIDING;
    end;
}

abyss_03,115,26,0    script    #ins_abyss03_warp    45,5,5,{
    end;
OnTouch:
    mes "Are you sure you want to leave?";
    next;
    switch(select("Leave.:Stay.")) {
    case 1:
        warp "prontera",156,191;
        break;
    case 2:
        warp strnpcinfo(4),160,155;
        break;
    }
    close;
OnInit:
    disablenpc strnpcinfo(0);
    end;
}

Link to comment
Share on other sites

4 answers to this question

Recommended Posts

  • 0

  • Group:  Members
  • Topic Count:  34
  • Topics Per Day:  0.01
  • Content Count:  386
  • Reputation:   38
  • Joined:  04/28/13
  • Last Seen:  

Check your console and tell us if are showing any error when you try to summon monsters.

Link to comment
Share on other sites

  • 0

  • Group:  Members
  • Topic Count:  2
  • Topics Per Day:  0.00
  • Content Count:  4
  • Reputation:   0
  • Joined:  02/15/17
  • Last Seen:  

Link to comment
Share on other sites

  • 0

  • Group:  Members
  • Topic Count:  0
  • Topics Per Day:  0
  • Content Count:  1
  • Reputation:   0
  • Joined:  03/04/17
  • Last Seen:  

#.... is an unique Identifier of an NPC, even if you have an 'floating' NPC without DisplayName.

Also you aren't duplicating #ins_abyss03_mobs so you don't need to use # in that place

Link to comment
Share on other sites

  • 0

  • Group:  Members
  • Topic Count:  2
  • Topics Per Day:  0.00
  • Content Count:  4
  • Reputation:   0
  • Joined:  02/15/17
  • Last Seen:  

33 minutes ago, shaitobu said:

#.... is an unique Identifier of an NPC, even if you have an 'floating' NPC without DisplayName.

Also you aren't duplicating #ins_abyss03_mobs so you don't need to use # in that place

Nice, but the mobs are not spawning, do u know why ? =X

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...