PDA

View Full Version : Issues making this work the way I need it to.


jawa21
08-11-2006, 06:58 AM
I've made this quest which levels a character to 10 and gives them a set of starting gear. The problem comes in when I try to keep people over level 10 from being able to trigger the quest (in order to keep them from accidentally deleveling themselves). I can't figure out where to put the if statement, or if I'm using all the right commands for it.

I've tried putting

if ($mlevel >= 10)
{
quest::me("Turns her nose to the air indignantly.")
}


All over in the script, along with try elsif in various places. Any ideas? Full code is in the post below.

jawa21
08-11-2006, 07:00 AM
I edited out some of the classes to make the post fit, but the basic structure is the same.

sub EVENT_SAY {
if ($text=~/Hail/i)
{
quest::say("Hi there. I'm here to [help] newcomers.);
}
elsif ($text=~/help/i){
if ($mlevel >= 10)
{
quest::me("Turns her nose to the air indignantly.")
}
quest::level(10);
quest::say("Here is some starting gear to help you out");
if ($class == "Shadowknight"){
quest::summonitem(38063);
quest::summonitem(38064);
quest::summonitem(38065);
quest::summonitem(38066);
quest::summonitem(38067);
quest::summonitem(38068);
quest::summonitem(38069);
quest::summonitem(38070);
quest::summonitem(38071);
quest::summonitem(38072);
quest::summonitem(38073);
quest::summonitem(38074);
quest::summonitem(38075);
quest::summonitem(38076);
quest::summonitem(38078);
quest::summonitem(38079);
quest::summonitem(38080);
quest::summonitem(38081);
quest::summonitem(38082);
quest::summonitem(38083);
}
elsif ($class == "Warrior"){
quest::summonitem(38000);
quest::summonitem(38001);
quest::summonitem(38002);
quest::summonitem(38003);
quest::summonitem(38004);
quest::summonitem(38005);
quest::summonitem(38006);
quest::summonitem(38007);
quest::summonitem(38008);
quest::summonitem(38009);
quest::summonitem(38010);
quest::summonitem(38011);
quest::summonitem(38012);
quest::summonitem(38013);
quest::summonitem(38014);
quest::summonitem(38015);
quest::summonitem(38016);
quest::summonitem(38017);
quest::summonitem(38018);
quest::summonitem(38019);
quest::summonitem(38020);
}
elsif ($class == "Monk"){
quest::summonitem(38021);
quest::summonitem(38022);
quest::summonitem(38023);
quest::summonitem(38024);
quest::summonitem(38025);
quest::summonitem(38026);
quest::summonitem(38027);
quest::summonitem(38028);
quest::summonitem(38029);
quest::summonitem(38030);
quest::summonitem(38031);
quest::summonitem(38032);
quest::summonitem(38033);
quest::summonitem(38034);
quest::summonitem(38035);
quest::summonitem(38036);
quest::summonitem(38037);
quest::summonitem(38038);
quest::summonitem(38039);
quest::summonitem(38040);
quest::summonitem(38041);
}
elsif ($class == "Rogue"){
quest::summonitem(38042);
quest::summonitem(38043);
quest::summonitem(38044);
quest::summonitem(38045);
quest::summonitem(38046);
quest::summonitem(38047);
quest::summonitem(38048);
quest::summonitem(38049);
quest::summonitem(38050);
quest::summonitem(38051);
quest::summonitem(38052);
quest::summonitem(38053);
quest::summonitem(38054);
quest::summonitem(38055);
quest::summonitem(38056);
quest::summonitem(38057);
quest::summonitem(38058);
quest::summonitem(38059);
quest::summonitem(38060);
quest::summonitem(38061);
quest::summonitem(38062);
}
elsif ($class == "Shadowknight"){
quest::summonitem(38063);
quest::summonitem(38064);
quest::summonitem(38065);
quest::summonitem(38066);
quest::summonitem(38067);
quest::summonitem(38068);
quest::summonitem(38069);
quest::summonitem(38070);
quest::summonitem(38071);
quest::summonitem(38072);
quest::summonitem(38073);
quest::summonitem(38074);
quest::summonitem(38075);
quest::summonitem(38076);
quest::summonitem(38077);
quest::summonitem(38078);
quest::summonitem(38079);
quest::summonitem(38080);
quest::summonitem(38081);
quest::summonitem(38082);
quest::summonitem(38083);
}
elsif ($class == "Paladin"){
quest::summonitem(38084);
quest::summonitem(38085);
quest::summonitem(38086);
quest::summonitem(38087);
quest::summonitem(38088);
quest::summonitem(38089);
quest::summonitem(38090);
quest::summonitem(38091);
quest::summonitem(38092);
quest::summonitem(38093);
quest::summonitem(38094);
quest::summonitem(38095);
quest::summonitem(38096);
quest::summonitem(38097);
quest::summonitem(38098);
quest::summonitem(38099);
quest::summonitem(38100);
quest::summonitem(38101);
quest::summonitem(38102);
quest::summonitem(38103);
quest::summonitem(38104);
}
elsif ($class == "Ranger"){
quest::summonitem(38105);
quest::summonitem(38106);
quest::summonitem(38107);
quest::summonitem(38108);
quest::summonitem(38109);
quest::summonitem(38110);
quest::summonitem(38111);
quest::summonitem(38112);
quest::summonitem(38113);
quest::summonitem(38114);
quest::summonitem(38115);
quest::summonitem(38116);
quest::summonitem(38117);
quest::summonitem(38118);
quest::summonitem(38119);
quest::summonitem(38120);
quest::summonitem(38121);
quest::summonitem(38122);
quest::summonitem(38123);
quest::summonitem(38124);
quest::summonitem(38125);
}
elsif ($class == "Beastlord"){
quest::summonitem(38126);
quest::summonitem(38127);
quest::summonitem(38128);
quest::summonitem(38129);
quest::summonitem(38130);
quest::summonitem(38131);
quest::summonitem(38132);
quest::summonitem(38133);
quest::summonitem(38134);
quest::summonitem(38135);
quest::summonitem(38136);
quest::summonitem(38137);
quest::summonitem(38138);
quest::summonitem(38139);
quest::summonitem(38140);
quest::summonitem(38141);
quest::summonitem(38142);
quest::summonitem(38143);
quest::summonitem(38144);
quest::summonitem(38145);
quest::summonitem(38146);
}
elsif ($class == "Bard"){
quest::summonitem(38147);
quest::summonitem(38148);
quest::summonitem(38149);
quest::summonitem(38150);
quest::summonitem(38151);
quest::summonitem(38152);
quest::summonitem(38153);
quest::summonitem(38154);
quest::summonitem(38155);
quest::summonitem(38156);
quest::summonitem(38157);
quest::summonitem(38158);
quest::summonitem(38169);
quest::summonitem(38170);
quest::summonitem(38162);
quest::summonitem(38163);
quest::summonitem(38164);
quest::summonitem(38165);
quest::summonitem(38166);
quest::summonitem(38167);
quest::summonitem(38168);
}
elsif ($class == "Cleric"){
quest::summonitem(38169);
quest::summonitem(38170);
quest::summonitem(38171);
quest::summonitem(38172);
quest::summonitem(38173);
quest::summonitem(38174);
quest::summonitem(38175);
quest::summonitem(38176);
quest::summonitem(38177);
quest::summonitem(38178);
quest::summonitem(38179);
quest::summonitem(38180);
quest::summonitem(38181);
quest::summonitem(38182);
quest::summonitem(38183);
quest::summonitem(38184);
quest::summonitem(38185);
quest::summonitem(38186);
quest::summonitem(38187);
quest::summonitem(38188);
}
elsif ($class == "Druid"){
quest::summonitem(38189);
quest::summonitem(38190);
quest::summonitem(38191);
quest::summonitem(38192);
quest::summonitem(38193);
quest::summonitem(38194);
quest::summonitem(38195);
quest::summonitem(38196);
quest::summonitem(38197);
quest::summonitem(38198);
quest::summonitem(38199);
quest::summonitem(38200);
quest::summonitem(38201);
quest::summonitem(38202);
quest::summonitem(38203);
quest::summonitem(38204);
quest::summonitem(38205);
quest::summonitem(38206);
quest::summonitem(38207);
quest::summonitem(38208);
quest::summonitem(38209);
}
elsif ($class == "Shaman"){
quest::summonitem(38210);
quest::summonitem(38211);
quest::summonitem(38212);
quest::summonitem(38213);
quest::summonitem(38214);
quest::summonitem(38215);
quest::summonitem(38216);
quest::summonitem(38217);
quest::summonitem(38218);
quest::summonitem(38219);
quest::summonitem(38220);
quest::summonitem(38221);
quest::summonitem(38222);
quest::summonitem(38223);
quest::summonitem(38224);
quest::summonitem(38225);
quest::summonitem(38226);
quest::summonitem(38227);
quest::summonitem(38228);
quest::summonitem(38229);
quest::summonitem(38230);
}
}
}




#END of FILE Zone:nexus ID:152013 -- Fani_Dertrimas

Aramid
08-11-2006, 07:25 AM
I edited out some of the classes to make the post fit, but the basic structure is the same.

sub EVENT_SAY {
if ($text=~/Hail/i)
{
quest::say("Hi there. I'm here to [help] newcomers.);
}
elsif ($text=~/help/i){
if ($mlevel >= 10)



Try


if (($ulevel<="10")&&($text=~/Hail/i))
{
quest::say("Hi there. I'm here to [help] newcomers.);
}

else if (($ulevel<="10")&&($text=~/help/i))

rest of your code...


That should check to see if they are less than or equal to level 10 and if not, not say anything or give anything...

John Adams
08-11-2006, 09:15 AM
Also make sure your "else if" is not "elsif" :)

jawa21
08-11-2006, 09:55 AM
The level check works fine now, but another problem popped up when I tested it with a character other than my GM character (a shadowknight). It seems as though no matter the class of the character, they get the SK gear every time. Any ideas as to what's wrong? I'm just learning so it's probably a pretty obvious mistake.

John Adams
08-11-2006, 10:25 AM
I read somewhere that Perl refers "eq" to "==" doing comparisons. I do not think == fails, but you might try that?

jawa21
08-11-2006, 03:56 PM
Changing that fixed it! It works perfectly now. Thanks for the replies.