void InitializeMob(CMobEntity* PMob, CZone* PZone) { // add special mob mods // this only has to be added once AddCustomMods(PMob); PMob->m_Immunity |= PMob->getMobMod(MOBMOD_IMMUNITY); PMob->defaultMobMod(MOBMOD_SKILL_LIST, PMob->m_MobSkillList); PMob->defaultMobMod(MOBMOD_LINK_RADIUS, 10); PMob->defaultMobMod(MOBMOD_TP_USE_CHANCE, 30); PMob->defaultMobMod(MOBMOD_2HOUR_PROC, 60); PMob->defaultMobMod(MOBMOD_SIGHT_RANGE, MOB_SIGHT_RANGE); PMob->defaultMobMod(MOBMOD_SOUND_RANGE, MOB_SOUND_RANGE); // Killer Effect switch (PMob->m_EcoSystem) { case SYSTEM_AMORPH: PMob->addModifier(MOD_BIRD_KILLER, 5); break; case SYSTEM_AQUAN: PMob->addModifier(MOD_AMORPH_KILLER, 5); break; case SYSTEM_ARCANA: PMob->addModifier(MOD_UNDEAD_KILLER, 5); break; case SYSTEM_BEAST: PMob->addModifier(MOD_LIZARD_KILLER, 5); break; case SYSTEM_BIRD: PMob->addModifier(MOD_AQUAN_KILLER, 5); break; case SYSTEM_DEMON: PMob->addModifier(MOD_DRAGON_KILLER, 5); break; case SYSTEM_DRAGON: PMob->addModifier(MOD_DEMON_KILLER, 5); break; case SYSTEM_LIZARD: PMob->addModifier(MOD_VERMIN_KILLER, 5); break; case SYSTEM_LUMINION: PMob->addModifier(MOD_LUMORIAN_KILLER, 5); break; case SYSTEM_LUMORIAN: PMob->addModifier(MOD_LUMINION_KILLER, 5); break; case SYSTEM_PLANTOID: PMob->addModifier(MOD_BEAST_KILLER, 5); break; case SYSTEM_UNDEAD: PMob->addModifier(MOD_ARCANA_KILLER, 5); break; case SYSTEM_VERMIN: PMob->addModifier(MOD_PLANTOID_KILLER, 5); break; } }
void InitializeMob(CMobEntity* PMob, CZone* PZone) { // add special mob mods // this only has to be added once AddCustomMods(PMob); PMob->m_Immunity |= PMob->getMobMod(MOBMOD_IMMUNITY); PMob->defaultMobMod(MOBMOD_SKILL_LIST, PMob->m_MobSkillList); PMob->defaultMobMod(MOBMOD_LINK_RADIUS, 10); PMob->defaultMobMod(MOBMOD_TP_USE_CHANCE, 30); PMob->defaultMobMod(MOBMOD_2HOUR_PROC, 60); PMob->defaultMobMod(MOBMOD_SIGHT_RANGE, CMobEntity::sight_range); PMob->defaultMobMod(MOBMOD_SOUND_RANGE, CMobEntity::sound_range); // Killer Effect switch (PMob->m_EcoSystem) { case SYSTEM_AMORPH: PMob->addModifier(MOD_BIRD_KILLER, 5); break; case SYSTEM_AQUAN: PMob->addModifier(MOD_AMORPH_KILLER, 5); break; case SYSTEM_ARCANA: PMob->addModifier(MOD_UNDEAD_KILLER, 5); break; case SYSTEM_BEAST: PMob->addModifier(MOD_LIZARD_KILLER, 5); break; case SYSTEM_BIRD: PMob->addModifier(MOD_AQUAN_KILLER, 5); break; case SYSTEM_DEMON: PMob->addModifier(MOD_DRAGON_KILLER, 5); break; case SYSTEM_DRAGON: PMob->addModifier(MOD_DEMON_KILLER, 5); break; case SYSTEM_LIZARD: PMob->addModifier(MOD_VERMIN_KILLER, 5); break; case SYSTEM_LUMINION: PMob->addModifier(MOD_LUMORIAN_KILLER, 5); break; case SYSTEM_LUMORIAN: PMob->addModifier(MOD_LUMINION_KILLER, 5); break; case SYSTEM_PLANTOID: PMob->addModifier(MOD_BEAST_KILLER, 5); break; case SYSTEM_UNDEAD: PMob->addModifier(MOD_ARCANA_KILLER, 5); break; case SYSTEM_VERMIN: PMob->addModifier(MOD_PLANTOID_KILLER, 5); break; } if (PMob->m_maxLevel == 0 && PMob->m_minLevel == 0) { if (PMob->getZone() >= 1 && PMob->getZone() <= 252) { ShowError("Mob %s level is 0! zoneid %d, poolid %d\n", PMob->GetName(), PMob->getZone(), PMob->m_Pool); } } }
void InitializeMob(CMobEntity* PMob, CZone* PZone) { // add special mob mods // this only has to be added once AddCustomMods(PMob); ZONETYPE zoneType = PZone->GetType(); // do not despawn if I match this criteria if((PMob->m_Type & MOBTYPE_NOTORIOUS) || (PMob->m_Type & MOBTYPE_EVENT) || MOB_NO_DESPAWN || zoneType == ZONETYPE_DYNAMIS || zoneType == ZONETYPE_BATTLEFIELD) { PMob->setMobMod(MOBMOD_NO_DESPAWN, 1); } if(zoneType == ZONETYPE_DYNAMIS) { // no gil drop and no mugging! PMob->setMobMod(MOBMOD_GIL_MAX, -1); PMob->setMobMod(MOBMOD_MUG_GIL, -1); } // add two hours // this mod should be added to all NMs that two hour. // for dynamis mobs the statue should give mobs its two hour if(PMob->GetMLevel() >= 10) { if(PMob->m_Type & MOBTYPE_NOTORIOUS || zoneType == ZONETYPE_DYNAMIS) { if(PMob->m_EcoSystem == SYSTEM_BEASTMEN || PMob->m_EcoSystem == SYSTEM_HUMANOID) { PMob->defaultMobMod(MOBMOD_MAIN_2HOUR, 1); } } } PMob->m_Immunity |= PMob->getMobMod(MOBMOD_IMMUNITY); PMob->defaultMobMod(MOBMOD_SKILLS, PMob->m_Family); PMob->defaultMobMod(MOBMOD_LINK_RADIUS, MOB_LINK_RADIUS); PMob->defaultMobMod(MOBMOD_TP_USE_CHANCE, MOB_TP_USE_CHANCE); PMob->defaultMobMod(MOBMOD_ROAM_COOL, 30); // Killer Effect switch (PMob->m_EcoSystem) { case SYSTEM_AMORPH: PMob->addModifier(MOD_BIRD_KILLER, 5); break; case SYSTEM_AQUAN: PMob->addModifier(MOD_AMORPH_KILLER, 5); break; case SYSTEM_ARCANA: PMob->addModifier(MOD_UNDEAD_KILLER, 5); break; case SYSTEM_BEAST: PMob->addModifier(MOD_LIZARD_KILLER, 5); break; case SYSTEM_BIRD: PMob->addModifier(MOD_AQUAN_KILLER, 5); break; case SYSTEM_DEMON: PMob->addModifier(MOD_DRAGON_KILLER, 5); break; case SYSTEM_DRAGON: PMob->addModifier(MOD_DEMON_KILLER, 5); break; case SYSTEM_LIZARD: PMob->addModifier(MOD_VERMIN_KILLER, 5); break; case SYSTEM_LUMINION: PMob->addModifier(MOD_LUMORIAN_KILLER, 5); break; case SYSTEM_LUMORIAN: PMob->addModifier(MOD_LUMINION_KILLER, 5); break; case SYSTEM_PLANTOID: PMob->addModifier(MOD_BEAST_KILLER, 5); break; case SYSTEM_UNDEAD: PMob->addModifier(MOD_ARCANA_KILLER, 5); break; case SYSTEM_VERMIN: PMob->addModifier(MOD_PLANTOID_KILLER, 5); break; } }