void main() { object PC = GetLastUsedBy(); object Throne = OBJECT_SELF; string msg = ""; string done = ""; int qdone = GetCampaignInt(GetModuleName(), "qdone", PC); int q = 0; while(GetObjectByTag("q"+IntToString(q+1)) != OBJECT_INVALID) { if ((qdone & (1<<q)) == 0) { if (msg != "") msg += ", "; msg += GetName(GetObjectByTag("q"+IntToString(q+1))); } else { if (done != "") done += ", "; done += GetName(GetObjectByTag("q"+IntToString(q+1))); } q++; } if (msg != "") { msg = "You must complete the following quests before you may sit here: <cþ >" + msg + "</c>"; if (done != "") { msg += "\nCompleted quests: <c þ >" + done + "</c>"; } SpeakString(msg); } else { if (GetItemPossessedBy(PC, "qreward") != OBJECT_INVALID) { AssignCommand(PC, ActionSit(Throne)); } else { SpeakString("You need your members certificate to sit here " + GetName(PC)); SetImmortal(PC,FALSE); ApplyEffectToObject(DURATION_TYPE_INSTANT, EffectVisualEffect(VFX_COM_HIT_DIVINE,FALSE), PC, 0.0f); ApplyEffectToObject(DURATION_TYPE_INSTANT, EffectVisualEffect(44,FALSE), PC, 0.0f); ApplyEffectToObject(DURATION_TYPE_INSTANT, EffectVisualEffect(81,FALSE), PC, 0.0f); ApplyEffectToObject(DURATION_TYPE_INSTANT, EffectVisualEffect(91,FALSE), PC, 0.0f); ApplyEffectToObject(DURATION_TYPE_INSTANT, EffectVisualEffect(57,FALSE), PC, 0.0f); ApplyEffectToObject(DURATION_TYPE_INSTANT, EffectDeath(FALSE, FALSE), PC, 0.0f); } } // }