Jump to content

Instance achievements!?


Recommended Posts

Posted

Hello!

I would like to use code like this (Ahn'kahet example) for instance achievements:

                    if (!onedead)
                   {   /* Nicht möglich, da "CompletedAchievement()" privat ist!
                       AchievementEntry const* AE = sAchievementStore.LookupEntry(AchievementVolunteerWork);

                       Map::PlayerList const &PlayerList = instance->GetPlayers();
                       if (!PlayerList.isEmpty())
                       {
                           for (Map::PlayerList::const_iterator i = PlayerList.begin(); i != PlayerList.end(); ++i)
                               (i->getSource())->GetAchievementMgr().CompletedAchievement(AE);
                       }*/
                   }

the problem is that CompletedAchievement() is a private function. Couldn't / shouldn't we not simple make it public to let developer use this in instance scripts!? :confused:

Posted

Must be completed _cretera_ instead achievement and using proper call instead hacks like you attempt do...

Player have

Player::UpdateAchievementCriteria

But in most case like kill boss with additional reqirement expected some another way... and this call will propertly ignored.

Achievment criteria for kill special reqs check additinal requirements by achievment_criteria_data. In many kill boss cases not exist achievement creatria data types for descrive its.

Possible need implement achievement creatria data type *_SCRIPT that will suggest achievement system ask instance data for additinal reqs for criteria...

And in instance data virtual function you will can describe check like some boss killed at moment, anotyher boss alive, none death while phase, some objects not destroyed...

  • 3 weeks later...
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. Privacy Policy Terms of Use