Beispiel #1
0
int CInstanceHandler::registerDynamis(uint16 id, CCharEntity* PChar) {
    if(!hasFreeInstance()) {
        return -1;
    }
    CInstance* PInstance = instanceutils::loadInstance(this,id);
    if(PInstance==NULL) {
        return -1;
    }
    for(int i=0; i<m_MaxInstances; i++) {
        if(m_Instances[i]==NULL) {
            PInstance->setInstanceNumber(i+1);
            break;
        }
    }

    if(PInstance->addPlayerToDynamis(PChar)) {
        ShowDebug("InstanceHandler ::1 Added %s to the valid players list for Dynamis %i Instance %i \n",
                  PChar->GetName(),id,PInstance->getInstanceNumber());
    }

    m_Instances[PInstance->getInstanceNumber()-1] = PInstance;
    PInstance->init();
    PInstance->setDynaUniqueID();
    luautils::OnBcnmRegister(PChar,PInstance);
    return PInstance->getInstanceNumber();
}