viewing paste Unknown #35672 | Athena

Posted on the
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136
prontera,150,151,4  script  Bard    1_M_BARD,{
    mes .npcname$;
    if ( BQComplete ) // If completed.
    {
    mes "You completed the Bard Quest.";
    close;
    }
 
    if ( !BQuest1 || !BQuest2 || !BQuest3 || !BQuest4 ) 
    {   // Checks to see if you haven't completed all 4 quests yet.
    mes "Please help me find the missing Music Scores. I know where you can find them.";
    mes "There's certain people who have them, I can't tell you EXACTLY where they're at, but...";
    next;
    mes .npcname$;
    mes "Locations:";
    .@size = 4;
    for ( .@i = 1; .@i <= .@size; .@i++ ) {
    mes ""+.@i+") "+$q_loc$[.@i]+"";
    }
    close;
    }
    mes .npcname$;
    mes "Wow you seemed to have gathered all of the Music Scores!";
    next;
    if ( Weight >= MaxWeight/50 )
    {
        mes .npcname$;
        mes "Uh oh, it seems like you have too much weight, please store some items to recieve my reward.";
        close;
    }
    mes .npcname$;
    mes "I'll take those Music Scores off of ya!";
    mes "Here's a little something for helping me out.";
    close2;
    
    delitem 505, 4; // Deletes the 4 Music Scores.
    getitem 509, 100; // Gets reward.
    BQComplete++; // Completes the Quest.
    end;
    
OnInit:
.npcname$ = "[Bard]";
end;
}
 
prontera,150,150,4  script  Quest1  1_M_BARD,{
    
    if ( Class != Job_Bard ) // Checks to see if you are bard or not.
    {
        mes .npcname$;
        mes "Sorry but you need to be a Bard to talk to me.";
        close;
    }
    
    if ( BQuest1 ) // Checks to see if quest is finished or not.
    {
        mes .npcname$;
        mes "You have already fulfilled my request! Thanks a ton.";
        close;
    }
    
    if ( !BQTalked ) // Checks to see if you've never talked to the NPC before.
    {
        mes "Hello "+strcharinfo(0)+".";
        mes "I was wondering if you are willing to help me locate some items.";
        mes "It's all for a greater purpose.";
        next;
        mes .npcname$;
        mes "Here's what we need:";
        .@size = getarraysize(.ItemList); // gets array size of the Item List.
        for ( .@i = 1; .@i <= .@size; .@i++ ) // loops
        {
            mes ""+getitemname(.ItemList[.@i])+" x "+.ItemAm[.@i]+".";
        }
            next;
            mes .npcname$;
            mes "Come talk to me again if you wish to see the list of items or if you have gathered them all.";
            BQTalked++;
            close;
    } else
    
    if ( BQTalked ) // Checks to see if you've already talked to the NPC already.
        {
        .@size = getarraysize(.ItemList);
        for ( .@i = 1; .@i <= .@size; .@i++ )
        {
            if( countitem( .ItemList[.@i] ) < .ItemAm[.@i]) // Output what you need and what you have in your inventory.
            {
                mes .npcname$;
                mes "Sorry but you have "+getitemname(.ItemList[.@i])+" x "+countitem(.ItemList[.@i])+".";
                mes "You need "+getitemname(.ItemList[.@i])+" x "+.ItemAm[.@i]+".";
                close;
            }
        }
        mes .npcname$;
        mes "You have all the items!";
        close2;
        BQuest1++;
        .@size = getarraysize(.ItemList);
        for ( .@i = 1; .@i <= .@size; .@i++ )
        {
            delitem .ItemList[.@i], .ItemAm[.@i];
        }
        end;
        }
end;
 
 
OnInit:
 
.npcname$ = "[Quest1]";
setarray .ItemList[1],501,502,503;
setarray .ItemAm[1],1,2,3;
getmapxy(.@map$,.@x,.@y,1);
$q_loc$[1] = .@map$+"|"+.@x+"|"+.@y;
end;
}
 
prontera,150,152,4  script  Quest2  1_M_BARD,{
    end;
OnInit:
getmapxy(.@map$,.@x,.@y,1);
$q_loc$[2] = .@map$+"|"+.@x+"|"+.@y;
}
prontera,150,153,4  script  Quest3  1_M_BARD,{
    end;
OnInit:
getmapxy(.@map$,.@x,.@y,1);
$q_loc$[3] = .@map$+"|"+.@x+"|"+.@y;
}
prontera,150,154,4  script  Quest4  1_M_BARD,{
    end;
OnInit:
getmapxy(.@map$,.@x,.@y,1);
$q_loc$[4] = .@map$+"|"+.@x+"|"+.@y;
}
Viewed 872 times, submitted by Guest.