EQEmulator Forums

EQEmulator Forums (https://www.eqemulator.org/forums/index.php)
-   Quests::Q&A (https://www.eqemulator.org/forums/forumdisplay.php?f=599)
-   -   Change Class + Zone ? (https://www.eqemulator.org/forums/showthread.php?t=41687)

Lane 01-09-2018 06:46 PM

Change Class + Zone ?
 
Hi guys, I'm trying to get this quest to change the client to a warrior while also zoning them to the Greater Faydark. Is this possible because the permaclass command causes you to disconnect?

Thank you

Code:

sub EVENT_SAY {
if($text =~/Hail/i) {
quest::say ("Innoruuk deserved to die, as did you. It's a pity that [$Rallos] brought you here!");
}
if ($text =~/Rallos/i) {
quest::say ("Yes, my foolish father, Rallos Zek. He saved you! Now he demands you return to the world of the [$living].");
}
if ($text =~/living/i) {
quest::say ("Norrath you fool! Now do you [$pledge] allegiance to the Warlord?");
}
if ($text =~/pledge/i) {
quest::say ("Welcome young warrior. Now get out of my sight!");
quest::permaclass(1);
quest::movepc(138,0,0,0);
}
}


Coenxai 01-09-2018 08:12 PM

...Why not try it and find out?

phantomghost 01-09-2018 08:52 PM

I made an attempt to figure it out using if and elsif statements, but could not get it to work, maybe you could look into those variable/operators and see if something works.

It looks like Gfaydark should be zone id 54.

Not sure why the last guy felt his post of ... Why not try it and find out? was necessary since it was obvious you already made an attempt. But then again as you start to search most of the forums you have to read through 95% of posts like his, to find the 5% that try to help or at least lead you in the correct direction.

Coenxai 01-09-2018 08:56 PM

Quote:

Originally Posted by phantomghost (Post 256933)
I made an attempt to figure it out using if and elsif statements, but could not get it to work, maybe you could look into those variable/operators and see if something works.

It looks like Gfaydark should be zone id 54.

Not sure why the last guy felt his post of ... Why not try it and find out? was necessary since it was obvious you already made an attempt. But then again as you start to search most of the forums you have to read through 95% of posts like his, to find the 5% that try to help or at least lead you in the correct direction.

..........

phantomghost 01-09-2018 08:59 PM

Quote:

Originally Posted by Coenxai (Post 256934)
..........

That is exactly what I was thinking when you responded with Why not try it and find out, when it was pretty obvious he did try it, and it did not work.

You could of simply ignored the post or made an actual attempt to help, but instead you went with the lets be a dick route.

Kingly_Krab 01-09-2018 09:04 PM

All you have to do is go in the source and remove the kick from permaclass method. Really it doesn't need to kick you, all you need is to zone and it will update.

Change this:
Code:

void QuestManager::permaclass(int class_id) {
    QuestManagerCurrentQuestVars();
    //Makes the client the class specified
    initiator->SetBaseClass(class_id);
    initiator->Save(2);
    initiator->Kick();
}

To this:
Code:

void QuestManager::permaclass(int class_id) {
    QuestManagerCurrentQuestVars();
    //Makes the client the class specified
    initiator->SetBaseClass(class_id);
    initiator->Save(2);
}


The_Beast 01-09-2018 09:16 PM

Quote:

Originally Posted by Kingly_Krab (Post 256937)
All you have to do is go in the source and remove the kick from permaclass method.

Thanks Kingly, I was annoyed by that "disconnect" myself, just doing a simple GM permaclass on a toon.

EDIT: By the way, for others, that snippet is in questmgr.cpp source file.

Lane 01-09-2018 09:30 PM

Thank you all, I appreciate it. For zoneID I was looking at my DB. My apologies.


All times are GMT -4. The time now is 05:44 PM.

Powered by vBulletin®, Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.