public override bool OnDialog(GameObject attachee, GameObject triggerer) { if ((!attachee.HasMet(triggerer))) { ScriptDaemon.record_time_stamp(501); if ((GetGlobalVar(454) & 0x100) != 0) { triggerer.BeginDialog(attachee, 590); } else if ((GetGlobalFlag(91))) { triggerer.BeginDialog(attachee, 100); } else { triggerer.BeginDialog(attachee, 1); } } else { triggerer.BeginDialog(attachee, 300); } return(RunDefault); }
public static bool schedule_sb_retaliation_for_narc(GameObject attachee, GameObject triggerer) { SetGlobalVar(945, 5); StartTimer(518400000, () => sb_retaliation_for_narc()); // 518400000ms is 6 days ScriptDaemon.record_time_stamp("s_sb_retaliation_for_narc"); return(RunDefault); }
public override bool OnInsertItem(GameObject attachee, GameObject triggerer) { if (((triggerer.GetNameId() == 1203) && (!GetGlobalFlag(109)))) { ScriptDaemon.record_time_stamp(512); UiSystems.CharSheet.Hide(); attachee.Destroy(); SetGlobalFlag(109, true); AttachParticles("DesecrateEarth", triggerer); foreach (var npc in ObjList.ListVicinity(new locXY(484, 400), ObjectListFilter.OLC_NPC)) { if ((new[] { 14337, 14381 }).Contains(npc.GetNameId()) && npc.GetLeader() == null) // earth temple guards { npc.Attack(SelectedPartyLeader); } } foreach (var npc in ObjList.ListVicinity(new locXY(484, 424), ObjectListFilter.OLC_NPC)) { if ((new[] { 14337, 14381, 14296 }).Contains(npc.GetNameId()) && npc.GetLeader() == null) // earth temple guards { npc.Attack(SelectedPartyLeader); } } } return(RunDefault); }
public static bool schedule_sb_retaliation_for_whistleblower(GameObject attachee, GameObject triggerer) { SetGlobalVar(945, 6); StartTimer(1209600000, () => sb_retaliation_for_whistleblower()); // 1209600000ms is 14 days ScriptDaemon.record_time_stamp("s_sb_retaliation_for_whistleblower"); return(RunDefault); }
public static bool schedule_sb_retaliation_for_snitch(GameObject attachee, GameObject triggerer) { SetGlobalVar(945, 4); StartTimer(864000000, () => sb_retaliation_for_snitch()); // 864000000ms is 10 days ScriptDaemon.record_time_stamp("s_sb_retaliation_for_snitch"); return(RunDefault); }
public static bool schedule_bandits_1(GameObject attachee, GameObject triggerer) { var tempp = GetGlobalVar(923); if (GetGlobalVar(923) == 0) { for (var p = 0; p < 12; p++) { tempp += RandomRange(0, 8); } tempp -= 24; if (tempp < 5) { tempp = 5; } // approximate a gaussian distribution by adding together 12 uniformly distributed random variables // average result will be 24 days, standard deviation will be 8 days // it is then truncated at 5 days minimum (feel free to change) (roughly 1% of results might reach 5 or lower otherwise, even negative is possible though rare) SetGlobalVar(923, tempp); } StartTimer(tempp * 24 * 60 * 60 * 1000, () => set_bandits()); ScriptDaemon.record_time_stamp("s_ranths_bandits_1"); return(RunDefault); }
public static bool set_reward(GameObject attachee, GameObject triggerer) { attachee.RunOff(); StartTimer(864000000, () => give_reward()); // 864000000ms is 10 days ScriptDaemon.record_time_stamp("s_tillahi_reward"); // bulletproofed with Global Scheduling System - see py00439script_daemon.py return(RunDefault); }
public static bool prepare_goons(GameObject attachee) { // This script schedules Skole's Goons // Reworked to use global timing system StartTimer(259200000, () => goons_attack(attachee)); ScriptDaemon.record_time_stamp("s_skole_goons"); return(RunDefault); }
public static bool schedule_reward(GameObject attachee, GameObject triggerer) { SetGlobalFlag(152, true); attachee.SetObjectFlag(ObjectFlag.OFF); StartTimer(1209600000, () => give_reward()); // 1209600000ms is 2 weeks ScriptDaemon.record_time_stamp("s_thrommel_reward"); return(RunDefault); }
public static bool destroy_orb(GameObject attachee, GameObject triggerer) { SetGlobalFlag(326, true); // set timer for 4 days and then end game or go to verbo StartTimer(345600000, () => return_Zuggtmoy(attachee, triggerer)); ScriptDaemon.record_time_stamp("s_zuggtmoy_banishment_initiate"); return(RunDefault); }
public override bool OnDying(GameObject attachee, GameObject triggerer) { if (CombatStandardRoutines.should_modify_CR(attachee)) { CombatStandardRoutines.modify_CR(attachee, CombatStandardRoutines.get_av_level()); } ScriptDaemon.record_time_stamp(507); return(RunDefault); }
public static void q16() { if (GetQuestState(16) == QuestState.Accepted || GetQuestState(16) == QuestState.Mentioned) { SetQuestState(16, QuestState.Completed); ScriptDaemon.record_time_stamp(431); } return; }
public static void rngfighttime_set() { if (!GetGlobalFlag(426)) { ScriptDaemon.record_time_stamp(426); SetGlobalFlag(426, true); } return; }
public static void f41() { if (!GetGlobalFlag(41)) { SetGlobalFlag(41, true); ScriptDaemon.record_time_stamp(432); } return; }
public override bool OnDying(GameObject attachee, GameObject triggerer) { ScriptDaemon.record_time_stamp(505); ScriptDaemon.set_v(499, ScriptDaemon.get_v(499) + 1); if (Math.Pow((ScriptDaemon.get_v(498) / 75f), 3) + Math.Pow((ScriptDaemon.get_v(499) / 38f), 3) + Math.Pow((ScriptDaemon.get_v(500) / 13f), 3) >= 1) { ScriptDaemon.record_time_stamp(510); } return(RunDefault); }
public override bool OnDialog(GameObject attachee, GameObject triggerer) { if (GetGlobalVar(923) == 0) { var tempp = 0; for (var p = 0; p < 12; p++) { tempp += RandomRange(0, 8); } tempp -= 24; if (tempp < 5) { tempp = 5; } SetGlobalVar(923, tempp); } else if (!ScriptDaemon.tpsts("s_ranths_bandits_1", 0)) { ScriptDaemon.record_time_stamp("s_ranths_bandits_1"); } attachee.TurnTowards(triggerer); if ((GetQuestState(78) == QuestState.Completed && GetQuestState(107) == QuestState.Unknown && GetQuestState(112) == QuestState.Mentioned)) { triggerer.BeginDialog(attachee, 430); } if ((GetQuestState(74) == QuestState.Completed && GetQuestState(78) == QuestState.Unknown && GetQuestState(111) == QuestState.Mentioned)) { triggerer.BeginDialog(attachee, 450); } else if ((GetGlobalVar(993) == 7)) { triggerer.BeginDialog(attachee, 630); } else if ((GetGlobalVar(993) == 9)) { triggerer.BeginDialog(attachee, 710); } else if ((attachee.GetMap() == 5156)) { triggerer.BeginDialog(attachee, 910); } else { triggerer.BeginDialog(attachee, 1); } return(SkipDefault); }
public override bool OnDying(GameObject attachee, GameObject triggerer) { // if should_modify_CR( attachee ): // modify_CR( attachee, get_av_level() ) ScriptDaemon.record_time_stamp(518); SetGlobalFlag(110, true); if ((attachee.GetLeader() != null)) { SetGlobalVar(29, GetGlobalVar(29) + 1); } return(RunDefault); }
public override bool OnDialog(GameObject attachee, GameObject triggerer) { if ((!attachee.HasMet(triggerer))) { ScriptDaemon.record_time_stamp(503); triggerer.BeginDialog(attachee, 1); } else { triggerer.BeginDialog(attachee, 50); } return(SkipDefault); }
public override bool OnHeartbeat(GameObject attachee, GameObject triggerer) { if ((!GameSystems.Combat.IsCombatActive())) { foreach (var obj in ObjList.ListVicinity(attachee.GetLocation(), ObjectListFilter.OLC_PC)) { if ((!attachee.HasMet(obj))) { if ((Utilities.is_safe_to_talk(attachee, obj))) { ScriptDaemon.record_time_stamp(501); if ((GetGlobalFlag(91))) { obj.TurnTowards(attachee); // added by Livonya attachee.TurnTowards(obj); // added by Livonya obj.BeginDialog(attachee, 100); } else if (((GetGlobalFlag(107)) || (GetGlobalFlag(105)))) { obj.TurnTowards(attachee); // added by Livonya attachee.TurnTowards(obj); // added by Livonya obj.BeginDialog(attachee, 590); } else { obj.TurnTowards(attachee); // added by Livonya attachee.TurnTowards(obj); // added by Livonya obj.BeginDialog(attachee, 1); } } } } } // game.new_sid = 0 ## removed by Livonya if ((GetGlobalVar(727) == 0 && attachee.GetLeader() == null && !GameSystems.Combat.IsCombatActive())) { attachee.CastSpell(WellKnownSpells.OwlsWisdom, attachee); attachee.PendingSpellsToMemorized(); } if ((GetGlobalVar(727) == 4 && attachee.GetLeader() == null && !GameSystems.Combat.IsCombatActive())) { attachee.CastSpell(WellKnownSpells.ShieldOfFaith, attachee); attachee.PendingSpellsToMemorized(); } SetGlobalVar(727, GetGlobalVar(727) + 1); return(RunDefault); }
public override bool OnExitCombat(GameObject attachee, GameObject triggerer) { if ((attachee.GetMap() == 5001 || attachee.GetMap() == 5051 || attachee.GetMap() == 5121)) { attachee.SetObjectFlag(ObjectFlag.OFF); if ((!GetGlobalFlag(929))) { SetGlobalVar(927, 5); StartTimer(432000000, () => reset_gremlich()); // 432000000ms is 5 days ScriptDaemon.record_time_stamp("s_gremlich_2"); } } return(RunDefault); }
public override bool OnDialog(GameObject attachee, GameObject triggerer) { if (attachee.GetNameId() == 14181) // Water Temple Sentry { if (ScriptDaemon.get_v("water_sentry_pester") < 7) { var lll = RandomRange(0, 3); attachee.FloatLine(lll + 1100, triggerer); ScriptDaemon.set_v("water_sentry_pester", ScriptDaemon.get_v("water_sentry_pester") + 1); } else if (ScriptDaemon.get_v("water_sentry_pester") == 7) { var lll = RandomRange(0, 1); attachee.FloatLine(1104 + lll, triggerer); ScriptDaemon.set_v("water_sentry_pester", ScriptDaemon.get_v("water_sentry_pester") + 1); } else if (ScriptDaemon.get_v("water_sentry_pester") == 8) { attachee.FloatLine(1150, triggerer); ScriptDaemon.set_v("water_sentry_pester", ScriptDaemon.get_v("water_sentry_pester") + 1); } else if (ScriptDaemon.get_v("water_sentry_pester") > 8) { attachee.SetCritterFlag(CritterFlag.MUTE); } } else if ((!attachee.HasMet(triggerer))) { ScriptDaemon.record_time_stamp(501); if ((GetGlobalFlag(91))) { triggerer.BeginDialog(attachee, 100); } else { triggerer.BeginDialog(attachee, 1); } } else { triggerer.BeginDialog(attachee, 300); } return(SkipDefault); }
public override bool OnDialog(GameObject attachee, GameObject triggerer) { ScriptDaemon.record_time_stamp(515); if ((GetGlobalFlag(132))) { attachee.Attack(triggerer); } else if ((!attachee.HasMet(triggerer))) { triggerer.BeginDialog(attachee, 1); } else { triggerer.BeginDialog(attachee, 370); } return(SkipDefault); }
public static void set_to_of_off(GameObject obj) { if ((obj != null && !Utilities.critter_is_unconscious(obj) && obj.GetLeader() == null && !obj.D20Query(D20DispatcherKey.QUE_Critter_Is_Held))) // mainly in case the player initiates the fight with her e.g. one-shotting or charming her etc. { // and not obj.d20_query(Q_Prone) # removed this one - I think it's reasonable that she crawls under something even after being tripped obj.SetObjectFlag(ObjectFlag.CLICK_THROUGH); // obj.move(obj.location + 50 , 0.0, 0.0) ScriptDaemon.record_time_stamp("dala_buggered_off"); obj.SetObjectFlag(ObjectFlag.OFF); } else { obj.ClearObjectFlag(ObjectFlag.CLICK_THROUGH); // obj.move(obj.location - 50 , 0.0, 0.0) obj.ClearObjectFlag(ObjectFlag.OFF); obj.FadeTo(255, 1, 35); } }
public override bool OnDialog(GameObject attachee, GameObject triggerer) { ScriptDaemon.record_time_stamp(517); triggerer.TurnTowards(attachee); // added by Livonya attachee.TurnTowards(triggerer); // added by Livonya if ((triggerer.GetPartyMembers().Any(o => o.HasFollowerByName(8031)))) { // Prince Thrommel in your party triggerer.BeginDialog(attachee, 700); } else if ((triggerer.GetPartyMembers().Any(o => o.HasFollowerByName(8040)) && (!GetGlobalFlag(192)))) { // Ashrem in your party triggerer.BeginDialog(attachee, 860); } else if (((GetGlobalFlag(115)) && (GetGlobalFlag(116)) && (!GetGlobalFlag(125)))) { // Tubal and Antonio are dead (116 & 115 respectively), and you haven't bluffed him yet (125) triggerer.BeginDialog(attachee, 400); } else if ((!attachee.HasMet(triggerer))) { if ((GetGlobalFlag(92))) { // Recruited via Wat triggerer.BeginDialog(attachee, 200); } else { // Waltzing In (TM) triggerer.BeginDialog(attachee, 1); } } else { // "What news have you for me" triggerer.BeginDialog(attachee, 300); } return(SkipDefault); }
public static bool encounter_picker(GameObject attachee, GameObject triggerer) { var enc = RandomRange(1, 6); if ((enc == 1)) { StartTimer(259200000, () => set_sport_encounter_1()); // 259200000ms is 3 days ScriptDaemon.record_time_stamp("s_sport_1"); } else if ((enc == 2)) { StartTimer(259200000, () => set_sport_encounter_2()); // 259200000ms is 3 days ScriptDaemon.record_time_stamp("s_sport_2"); } else if ((enc == 3)) { StartTimer(259200000, () => set_sport_encounter_3()); // 259200000ms is 3 days ScriptDaemon.record_time_stamp("s_sport_3"); } else if ((enc == 4)) { StartTimer(259200000, () => set_sport_encounter_4()); // 259200000ms is 3 days ScriptDaemon.record_time_stamp("s_sport_4"); } else if ((enc == 5)) { StartTimer(259200000, () => set_sport_encounter_5()); // 259200000ms is 3 days ScriptDaemon.record_time_stamp("s_sport_5"); } else if ((enc == 6)) { StartTimer(259200000, () => set_sport_encounter_6()); // 259200000ms is 3 days ScriptDaemon.record_time_stamp("s_sport_6"); } return(RunDefault); }
public override bool OnStartCombat(GameObject attachee, GameObject triggerer) { romag_call_help(attachee); if ((Utilities.obj_percent_hp(attachee) < 50 && (!attachee.HasMet(triggerer)))) { GameObject found_pc = null; foreach (var pc in PartyLeader.GetPartyMembers()) { attachee.AIRemoveFromShitlist(pc); if (pc.type == ObjectType.pc) { found_pc = pc; } } if (found_pc != null) { ScriptDaemon.record_time_stamp(501); foreach (var pc in PartyLeader.GetPartyMembers()) { foreach (var npc in ObjList.ListVicinity(attachee.GetLocation(), ObjectListFilter.OLC_NPC)) { if ((new[] { 14162, 14163, 14165, 14337, 14339, 14156 }).Contains(npc.GetNameId()) && npc.GetLeader() == null) { npc.AIRemoveFromShitlist(pc); } } } found_pc.BeginDialog(attachee, 200); return(SkipDefault); } } return(RunDefault); }
public void ApplySideEffect(GameObject npc, GameObject pc, int lineNumber, out string originalScript) { switch (lineNumber) { case 35: case 36: case 522: case 541: case 553: originalScript = "npc.attack(pc)"; npc.Attack(pc); break; case 60: case 470: originalScript = "game.story_state = 5"; StoryState = 5; break; case 160: case 1600: originalScript = "game.quests[49].state = qs_mentioned"; SetQuestState(49, QuestState.Mentioned); break; case 175: case 176: originalScript = "unlock_sw_doors()"; unlock_sw_doors(); break; case 190: originalScript = "game.quests[49].state = qs_accepted; game.global_flags[346] = 1; record_time_stamp(479)"; SetQuestState(49, QuestState.Accepted); SetGlobalFlag(346, true); ScriptDaemon.record_time_stamp(479); ; break; case 220: case 310: originalScript = "game.quests[49].state = qs_completed; pc.reputation_add( 10 )"; SetQuestState(49, QuestState.Completed); pc.AddReputation(10); ; break; case 240: originalScript = "game.quests[50].state = qs_mentioned"; SetQuestState(50, QuestState.Mentioned); break; case 250: originalScript = "game.quests[50].state = qs_accepted; npc.item_transfer_to(pc,3601); game.global_flags[346] = 1"; SetQuestState(50, QuestState.Accepted); npc.TransferItemByNameTo(pc, 3601); SetGlobalFlag(346, true); ; break; case 305: case 306: originalScript = "game.quests[49].state = qs_botched"; SetQuestState(49, QuestState.Botched); break; case 320: originalScript = "game.quests[50].state = qs_completed"; SetQuestState(50, QuestState.Completed); break; case 340: originalScript = "game.quests[51].state = qs_mentioned"; SetQuestState(51, QuestState.Mentioned); break; case 360: case 380: case 390: originalScript = "game.quests[51].state = qs_completed"; SetQuestState(51, QuestState.Completed); break; case 400: originalScript = "record_time_stamp(483); game.quests[51].state = qs_accepted"; ScriptDaemon.record_time_stamp(483); SetQuestState(51, QuestState.Accepted); ; break; case 443: case 593: case 594: originalScript = "game.global_flags[813] = 1"; SetGlobalFlag(813, true); break; case 451: case 601: originalScript = "escort_below(npc, pc)"; escort_below(npc, pc); break; case 1621: case 1641: originalScript = "pc.reputation_add( 10 )"; pc.AddReputation(10); break; default: originalScript = null; return; } }
public override bool OnHeartbeat(GameObject attachee, GameObject triggerer) { var(xx, yy) = attachee.GetLocation(); if ((!GameSystems.Combat.IsCombatActive())) { if (xx == 545 && yy == 497) // Kelno is in his usual place { foreach (var obj in ObjList.ListVicinity(attachee.GetLocation(), ObjectListFilter.OLC_PC)) { if ((!attachee.HasMet(obj))) { if ((Utilities.is_safe_to_talk(attachee, obj))) { ScriptDaemon.record_time_stamp(516); if (((GetGlobalFlag(104)) || (GetGlobalFlag(105)) || (GetGlobalFlag(107)))) { obj.TurnTowards(attachee); // added by Livonya attachee.TurnTowards(obj); // added by Livonya obj.BeginDialog(attachee, 460); } else { obj.TurnTowards(attachee); // added by Livonya attachee.TurnTowards(obj); // added by Livonya obj.BeginDialog(attachee, 1); } } } } } else { // game.new_sid = 0 ## removed by Livonya // else: #Kelno is in the Air Altar room - Air is on alert foreach (var obj in GameSystems.Party.PartyMembers) { // attachee.turn_towards(obj) if ((!attachee.HasMet(obj) && is_safe_to_talk2(attachee, obj, 25) == 1 && obj.type == ObjectType.pc)) { ScriptDaemon.record_time_stamp(516); if (((ScriptDaemon.get_v(453) & 4) == 0 && (ScriptDaemon.get_v(453) & 8) == 0 && (ScriptDaemon.get_v(453) & 16) == 0)) // Air Escort Variables { // How the hell did you get here? GTFO! (not escorted by anyone, probably dropped in from ceiling or snuck in) // For now, ordinary dialogue if (((GetGlobalFlag(104)) || (GetGlobalFlag(105)) || (GetGlobalFlag(107)))) { obj.TurnTowards(attachee); // added by Livonya attachee.TurnTowards(obj); // added by Livonya obj.BeginDialog(attachee, 460); } else { obj.TurnTowards(attachee); // added by Livonya attachee.TurnTowards(obj); // added by Livonya obj.BeginDialog(attachee, 1); } } else { if (((GetGlobalFlag(104)) || (GetGlobalFlag(105)) || (GetGlobalFlag(107)))) { obj.TurnTowards(attachee); // added by Livonya attachee.TurnTowards(obj); // added by Livonya obj.BeginDialog(attachee, 460); } else { obj.TurnTowards(attachee); // added by Livonya attachee.TurnTowards(obj); // added by Livonya obj.BeginDialog(attachee, 1); } } } } } } if ((GetGlobalVar(715) == 0 && attachee.GetLeader() == null && !GameSystems.Combat.IsCombatActive())) { attachee.CastSpell(WellKnownSpells.ProtectionFromElements, attachee); attachee.PendingSpellsToMemorized(); } if ((GetGlobalVar(715) == 4 && attachee.GetLeader() == null && !GameSystems.Combat.IsCombatActive())) { attachee.CastSpell(WellKnownSpells.ShieldOfFaith, attachee); attachee.PendingSpellsToMemorized(); } SetGlobalVar(715, GetGlobalVar(715) + 1); return(RunDefault); }
public override bool OnDying(GameObject attachee, GameObject triggerer) { if (CombatStandardRoutines.should_modify_CR(attachee)) { CombatStandardRoutines.modify_CR(attachee, CombatStandardRoutines.get_av_level()); } // if game.global_flags[277] == 0: // Kalshane's idea for Raimol ratting the party out to the traders and triggering the assassination - put on hold // for obj in game.party: // if obj.name == 8050: // a = game.encounter_queue // b = 1 // for enc_id in a: // if enc_id == 3000: // b = 0 // if b == 1: // game.encounter_queue.append(3000) // game.global_flags[420] = 1 ScriptDaemon.record_time_stamp(425); if ((attachee.GetLeader() != null)) { SetGlobalVar(29, GetGlobalVar(29) + 1); SetGlobalFlag(37, true); if ((StoryState <= 1)) { StoryState = 2; } return(RunDefault); } attachee.FloatLine(12014, triggerer); SetGlobalFlag(37, true); if ((StoryState <= 1)) { StoryState = 2; } foreach (var pc in GameSystems.Party.PartyMembers) { if ((pc.HasReputation(18))) { pc.RemoveReputation(18); } } attachee.FloatLine(12014, triggerer); PartyLeader.AddReputation(15); if ((GetGlobalFlag(340))) { foreach (var obj in ObjList.ListVicinity(attachee.GetLocation(), ObjectListFilter.OLC_PC)) { if ((Utilities.is_safe_to_talk(attachee, obj))) { SetGlobalFlag(834, true); obj.BeginDialog(attachee, 370); attachee.FloatLine(12014, triggerer); } } } else if ((!GetGlobalFlag(62))) { foreach (var obj in ObjList.ListVicinity(attachee.GetLocation(), ObjectListFilter.OLC_PC)) { if ((Utilities.is_safe_to_talk(attachee, obj))) { SetGlobalFlag(834, true); obj.BeginDialog(attachee, 390); attachee.FloatLine(12014, triggerer); } } } return(RunDefault); }
public static bool run_off(GameObject attachee, GameObject triggerer) { ScriptDaemon.record_time_stamp(425); foreach (var pc in GameSystems.Party.PartyMembers) { attachee.AIRemoveFromShitlist(pc); attachee.SetReaction(pc, 50); } attachee.RunOff(); var obj_list = new List <GameObject>(); using var firstList = ObjList.ListVicinity(attachee.GetLocation(), ObjectListFilter.OLC_NPC); obj_list.AddRange(firstList); foreach (var obj in ObjList.ListVicinity(attachee.GetLocation().OffsetTiles(-35, 0), ObjectListFilter.OLC_NPC)) { if (!((obj_list).Contains(obj))) { obj_list.Add(obj); } } foreach (var obj in ObjList.ListVicinity(attachee.GetLocation().OffsetTiles(35, 0), ObjectListFilter.OLC_NPC)) { if (!((obj_list).Contains(obj))) { obj_list.Add(obj); } } foreach (var obj in ObjList.ListVicinity(attachee.GetLocation().OffsetTiles(60, 0), ObjectListFilter.OLC_NPC)) { if (!((obj_list).Contains(obj))) { obj_list.Add(obj); } } foreach (var obj in obj_list) { if ((14074..14078).Contains(obj.GetNameId()) && obj.GetStat(Stat.hp_current) >= 0 && obj.GetLeader() == null) { obj.RunOff(); SetGlobalVar(756, GetGlobalVar(756) + 1); StartTimer(1000 + RandomRange(0, 200), () => destroy(obj), true); } } // if game.global_flags[277] == 0: // Raimol rats the party out to the traders // for obj in game.party: // if obj.name == 8050: // a = game.encounter_queue // b = 1 // for enc_id in a: // if enc_id == 3000: // b = 0 // if b == 1: // game.global_flags[420] = 1 // game.encounter_queue.append(3000) return(RunDefault); }