mirror of
https://github.com/SWG-Source/dsrc.git
synced 2026-01-17 00:05:07 -05:00
1793 lines
91 KiB
Java
Executable File
1793 lines
91 KiB
Java
Executable File
package script.library;
|
|
|
|
import script.*;
|
|
|
|
import java.util.Vector;
|
|
|
|
public class holiday extends script.base_script
|
|
{
|
|
public holiday()
|
|
{
|
|
}
|
|
public static final String PLANET_VAR_EVENT_PREFIX = "event";
|
|
public static final String PLANET_VAR_SCORE = ".score";
|
|
public static final String PLANET_VAR_EMPIRE_DAY = ".empire_day";
|
|
public static final String PLANET_VAR_SCORE_TIMESTAMP = PLANET_VAR_SCORE + ".timestamp";
|
|
public static final String PLANET_VAR_PLAYER_NAME = ".player_name";
|
|
public static final String PLANET_VAR_PLAYER_SCORE = ".player_score";
|
|
public static final String PLANET_VAR_PLAYER_FACTION_IMP = ".imperial";
|
|
public static final String PLANET_VAR_PLAYER_FACTION_REB = ".rebel";
|
|
public static final String EMPIRE_DAY_RECEIVED_VI = "gift.empire08";
|
|
public static final String EMPIRE_DAY_RECEIVED_VII = "gift.empire09";
|
|
public static final String EMPIRE_DAY_CHAMPION_BADGE = "empire_day_champion_badge_2009";
|
|
public static final String REMEMBRANCE_DAY_CHAMPION_BADGE = "remembrance_day_champion_badge_2009";
|
|
public static final String SPAWNER_PREFIX_OBJVAR = "spawned.";
|
|
public static final String LEADER_BOARD_TITLE = "Leader Boards Empire & Remembrance Day";
|
|
public static final String LEADERSUI_PID_NAME = "leaderBoardPid";
|
|
public static final String PLAYER_EMPIRE_DAY_PREFIX = PLANET_VAR_EVENT_PREFIX + PLANET_VAR_EMPIRE_DAY;
|
|
public static final String PLAYER_EMPIRE_DAY_SCORE = PLAYER_EMPIRE_DAY_PREFIX + PLANET_VAR_SCORE;
|
|
public static final String PLAYER_EMPIRE_DAY_NEUTRAL = PLAYER_EMPIRE_DAY_PREFIX + ".neutral";
|
|
public static final String IMPERIAL_AND_REBEL_EVENT_GIFT = "item_empire_day_6yr_painting";
|
|
public static final String IMPERIAL_EMPIRE_DAY_GIFT = "item_empire_day_6yr_greeter_tie_pilot";
|
|
public static final String REBEL_REMEMBRANCE_DAY_GIFT = "item_empire_day_6yr_greeter_xwing_pilot";
|
|
public static final String EMOTE_DATATABLE = "datatables/npc/emperors_day/badge_emotes.iff";
|
|
public static final String LIFEDAY = "event/life_day";
|
|
public static final String EMP_DAY = "event/emperors_day";
|
|
public static final String EMPIRE_DAY = "event/empire_day";
|
|
public static final string_id GIFT_GRANTED = new string_id(EMP_DAY, "gift_granted_empire");
|
|
public static final string_id GIFT_GRANTED_REBEL = new string_id(EMP_DAY, "gift_granted_rebel");
|
|
public static final string_id SID_REM_EMP_DAY_BADGE = new string_id(EMP_DAY, "empire_day_badge_removed");
|
|
public static final string_id SID_REM_REM_DAY_BADGE = new string_id(EMP_DAY, "remembrance_day_badge_removed");
|
|
public static final string_id SID_REMOVED_REWARD_FLAG = new string_id(EMP_DAY, "reward_flag_removed");
|
|
public static final string_id SID_MOUNTED = new string_id(LIFEDAY, "mounted");
|
|
public static final string_id SID_REACHED_LIMIT = new string_id(LIFEDAY, "reached_limit");
|
|
public static final string_id SID_COMPLETED_QUOTA = new string_id(EMPIRE_DAY, "completed_collection");
|
|
public static final string_id SID_IMPERIAL_COMPETITIVE_START = new string_id(EMPIRE_DAY, "imperial_competitive_start");
|
|
public static final string_id SID_REBEL_COMPETITIVE_START = new string_id(EMPIRE_DAY, "rebel_competitive_start");
|
|
public static final string_id SID_LOCKED_OUT = new string_id(LIFEDAY, "locked_out");
|
|
public static final string_id SID_IMPERIAL_START = new string_id(EMPIRE_DAY, "imperial_start");
|
|
public static final string_id SID_REBEL_START = new string_id(EMPIRE_DAY, "rebel_start");
|
|
public static final string_id SID_GCW_POINTS = new string_id(EMPIRE_DAY, "you_received_gcw_points");
|
|
public static final string_id SID_CONGRATS_QUOTA_IMPERIAL = new string_id(EMPIRE_DAY, "congratz_quota_accomplished_imp");
|
|
public static final string_id SID_OOPS_QUOTA_FAILED_IMPERIAL = new string_id(EMPIRE_DAY, "oops_quota_failed_imp");
|
|
public static final string_id SID_CONGRATS_QUOTA_REBEL = new string_id(EMPIRE_DAY, "congratz_quota_accomplished_reb");
|
|
public static final string_id SID_OOPS_QUOTA_FAILED_REBEL = new string_id(EMPIRE_DAY, "oops_quota_failed_reb");
|
|
public static final string_id SID_NOT_SF = new string_id(EMPIRE_DAY, "no_longer_sf_redeclare");
|
|
public static final string_id SID_NOT_WHILE_MOUNTED = new string_id(EMPIRE_DAY, "not_while_monted");
|
|
public static final string_id SID_TOKEN_REWARDED = new string_id(EMPIRE_DAY, "token_rewarded");
|
|
public static final string_id SID_TOKENS_REWARDED = new string_id(EMPIRE_DAY, "tokens_rewarded");
|
|
public static final String EVENT_TRACKER_SCRIPT = "systems.spawning.spawned_tracker";
|
|
public static final String SMOKE_CLIENT_EFFECT = "appearance/pt_smoke_puff.prt";
|
|
public static final String REBEL_RESISTANCE_COLLECTION = "remembrance_day_resistance_event";
|
|
public static final String REBEL_VANDAL_COLLECTION = "remembrance_day_vandal_event";
|
|
public static final String REBEL_ENGINEERING_COLLECTION = "remembrance_day_engineering_quest";
|
|
public static final String REBEL_ENTERTAINER_COLLECTION = "remembrance_day_performance_quest";
|
|
public static final String REBEL_RESCUE_COLLECTION = "remembrance_day_rescue_quest";
|
|
public static final String IMPERIAL_RECRUITING_COLLECTION = "empire_day_recruiting_event";
|
|
public static final String IMPERIAL_ANTIPROP_COLLECTION = "empire_day_anti_propaganda_event";
|
|
public static final String IMPERIAL_ENGINEERING_COLLECTION = "empire_day_engineering_quest";
|
|
public static final String IMPERIAL_ENTERTAINER_COLLECTION = "empire_day_performance_quest";
|
|
public static final String IMPERIAL_RESCUE_COLLECTION = "empire_day_rescue_quest";
|
|
public static final String REBEL_RESISTANCE_START_SLOT = "remembrance_day_resistance_starter";
|
|
public static final String REBEL_VANDAL_START_SLOT = "remembrance_day_vandal_starter";
|
|
public static final String REBEL_ENGINEERING_START_SLOT = "remembrance_day_engineering_starter";
|
|
public static final String REBEL_ENTERTAINER_START_SLOT = "remembrance_day_performance_starter";
|
|
public static final String REBEL_RESCUE_START_SLOT = "remembrance_day_rescue_starter";
|
|
public static final String IMPERIAL_RECRUITING_START_SLOT = "empire_day_recruitment_starter";
|
|
public static final String IMPERIAL_ANTIPROP_START_SLOT = "empire_day_anti_propaganda_starter";
|
|
public static final String IMPERIAL_ENGINEERING_START_SLOT = "empire_day_engineering_starter";
|
|
public static final String IMPERIAL_ENTERTAINER_START_SLOT = "empire_day_performance_starter";
|
|
public static final String IMPERIAL_RESCUE_START_SLOT = "empire_day_rescue_starter";
|
|
public static final String REBEL_RESISTANCE_COUNTER_SLOT = "remembrance_day_resistance_counter";
|
|
public static final String REBEL_VANDAL_COUNTER_SLOT = "remembrance_day_vandal_counter";
|
|
public static final String REBEL_ENGINEERING_COUNTER_SLOT = "remembrance_day_engineering_counter";
|
|
public static final String REBEL_ENTERTAINER_COUNTER_SLOT = "remembrance_day_performance_counter";
|
|
public static final String REBEL_RESCUE_COUNTER_SLOT = "remembrance_day_rescue_counter";
|
|
public static final String IMPERIAL_RECRUITING_COUNTER_SLOT = "empire_day_recruitment_counter";
|
|
public static final String IMPERIAL_ANTIPROP_COUNTER_SLOT = "empire_day_anti_propaganda_counter";
|
|
public static final String IMPERIAL_ENGINEERING_COUNTER_SLOT = "empire_day_engineering_counter";
|
|
public static final String IMPERIAL_ENTERTAINER_COUNTER_SLOT = "empire_day_performance_counter";
|
|
public static final String IMPERIAL_RESCUE_COUNTER_SLOT = "empire_day_rescue_counter";
|
|
public static final String IMPERIAL_EMPTY_KIOSK = "object/tangible/event_perk/empire_day_missing_sign.iff";
|
|
public static final String REBEL_EMPTY_KIOSK = "object/tangible/event_perk/remembrance_day_missing_sign.iff";
|
|
public static final String IMPERIAL_NONPLAYER_RESISTANCE_KIOSK = "object/tangible/event_perk/remembrance_day_resistance_sign.iff";
|
|
public static final String IMPERIAL_PLAYER_RECRUITMENT_KIOSK = "object/tangible/event_perk/empire_day_player_placed_recruitment_sign.iff";
|
|
public static final String IMPERIAL_PLAYER_DEFACED_KIOSK = "object/tangible/event_perk/remembrance_day_player_defaced_sign.iff";
|
|
public static final String REBEL_NONPLAYER_RECRUITMENT_KIOSK = "object/tangible/event_perk/empire_day_recruitment_sign.iff";
|
|
public static final String REBEL_PLAYER_RESISTANCE_KIOSK = "object/tangible/event_perk/remembrance_day_player_resistance_sign.iff";
|
|
public static final String REBEL_PLAYER_DEFACED_KIOSK = "object/tangible/event_perk/empire_day_player_defaced_recruitment_sign.iff";
|
|
public static final String BUFF_IMP_EMPIREDAY_RECRUITMENT_COMBATANT = "event_empireday_imperial_recruitment_combatant";
|
|
public static final String BUFF_REB_EMPIREDAY_RESISTANCE_COMBATANT = "event_empireday_rebel_resistance_combatant";
|
|
public static final String BUFF_IMP_EMPIREDAY_RECRUITMENT_SF = "event_empireday_imperial_recruitment_special_forces";
|
|
public static final String BUFF_REB_EMPIREDAY_RESISTANCE_SF = "event_empireday_rebel_resistance_special_forces";
|
|
public static final String BUFF_IMP_EMPIREDAY_ANTIPROP_COMBATANT = "event_empireday_imperial_antipropaganda_combatant";
|
|
public static final String BUFF_REB_EMPIREDAY_VANDAL_COMBATANT = "event_empireday_rebel_vandal_combatant";
|
|
public static final String BUFF_IMP_EMPIREDAY_ANTIPROP_SF = "event_empireday_imperial_antipropaganda_special_forces";
|
|
public static final String BUFF_REB_EMPIREDAY_VANDAL_SF = "event_empireday_rebel_vandal_special_forces";
|
|
public static final String BUFF_IMPERIAL_RECRUITMENT_COUNTER = "event_empireday_imperial_recruitment_counter";
|
|
public static final String BUFF_REBEL_RESISTANCE_COUNTER = "event_empireday_rebel_resistance_counter";
|
|
public static final String BUFF_IMPERIAL_ANTIPROPAGANDA_COUNTER = "event_empireday_imperial_propaganda_counter";
|
|
public static final String BUFF_REBEL_PLAYER_VANDAL_COUNTER = "event_empireday_rebel_vandal_counter";
|
|
public static final String EMPIRE_DAY_BUFF_TRACKER = "event_empireday_first_buff_ended";
|
|
public static final String BUFF_COMBATANT_GROUP = "combatant";
|
|
public static final String BUFF_SF_GROUP = "special_forces";
|
|
public static final String BUFF_COUNTER_GROUP = "counter";
|
|
public static final String TOKEN_IMPERIAL_EMPIRE_DAY = "item_empire_day_imperial_token";
|
|
public static final String TOKEN_REBEL_EMPIRE_DAY = "item_empire_day_rebel_token";
|
|
public static final String EVENT_PREFIX = "empire_day_event.";
|
|
public static final String EMPIRE_DAY_RECRUITMENT_LOCKED_OUT = EVENT_PREFIX + "recruitment_locked_out";
|
|
public static final String EMPIRE_DAY_RESISTANCE_LOCKED_OUT = EVENT_PREFIX + "resistance_locked_out";
|
|
public static final String EMPIRE_DAY_PROPAGANDA_LOCKED_OUT = EVENT_PREFIX + "propaganda_locked_out";
|
|
public static final String EMPIRE_DAY_VANDAL_LOCKED_OUT = EVENT_PREFIX + "vandal_locked_out";
|
|
public static final String EMPIRE_DAY_RECRUITMENT_TIMESTAMP = EVENT_PREFIX + "event_recruitment_time_stamp";
|
|
public static final String EMPIRE_DAY_PROPAGANDA_TIMESTAMP = EVENT_PREFIX + "event_propaganda_time_stamp";
|
|
public static final String EMPIRE_DAY_RESISTANCE_TIMESTAMP = EVENT_PREFIX + "event_resistance_time_stamp";
|
|
public static final String EMPIRE_DAY_VANDAL_TIMESTAMP = EVENT_PREFIX + "event_vandal_time_stamp";
|
|
public static final String EMPIREDAYQUEST_IMP_CRASHSITE_01_DOMESTICS = "crash_site_01_imp_domestics";
|
|
public static final String EMPIREDAYQUEST_IMP_CRASHSITE_02_DOMESTICS = "crash_site_02_imp_domestics";
|
|
public static final String EMPIREDAYQUEST_IMP_CRASHSITE_03_DOMESTICS = "crash_site_03_imp_domestics";
|
|
public static final String EMPIREDAYQUEST_IMP_CRASHSITE_04_DOMESTICS = "crash_site_04_imp_domestics";
|
|
public static final String EMPIREDAYQUEST_IMP_CRASHSITE_05_DOMESTICS = "crash_site_05_imp_domestics";
|
|
public static final String EMPIREDAYQUEST_IMP_CRASHSITE_06_DOMESTICS = "crash_site_06_imp_domestics";
|
|
public static final String EMPIREDAYQUEST_IMP_CRASHSITE_01_ENG = "crash_site_01_imp_engineering";
|
|
public static final String EMPIREDAYQUEST_IMP_CRASHSITE_02_ENG = "crash_site_02_imp_engineering";
|
|
public static final String EMPIREDAYQUEST_IMP_CRASHSITE_03_ENG = "crash_site_03_imp_engineering";
|
|
public static final String EMPIREDAYQUEST_IMP_CRASHSITE_04_ENG = "crash_site_04_imp_engineering";
|
|
public static final String EMPIREDAYQUEST_IMP_CRASHSITE_05_ENG = "crash_site_05_imp_engineering";
|
|
public static final String EMPIREDAYQUEST_IMP_CRASHSITE_06_ENG = "crash_site_06_imp_engineering";
|
|
public static final String EMPIREDAYQUEST_IMP_CRASHSITE_01_MUNITIONS = "crash_site_01_imp_munitions";
|
|
public static final String EMPIREDAYQUEST_IMP_CRASHSITE_02_MUNITIONS = "crash_site_02_imp_munitions";
|
|
public static final String EMPIREDAYQUEST_IMP_CRASHSITE_03_MUNITIONS = "crash_site_03_imp_munitions";
|
|
public static final String EMPIREDAYQUEST_IMP_CRASHSITE_04_MUNITIONS = "crash_site_04_imp_munitions";
|
|
public static final String EMPIREDAYQUEST_IMP_CRASHSITE_05_MUNITIONS = "crash_site_05_imp_munitions";
|
|
public static final String EMPIREDAYQUEST_IMP_CRASHSITE_06_MUNITIONS = "crash_site_06_imp_munitions";
|
|
public static final String EMPIREDAYQUEST_IMP_CRASHSITE_01_STRUC = "crash_site_01_imp_structures";
|
|
public static final String EMPIREDAYQUEST_IMP_CRASHSITE_02_STRUC = "crash_site_02_imp_structures";
|
|
public static final String EMPIREDAYQUEST_IMP_CRASHSITE_03_STRUC = "crash_site_03_imp_structures";
|
|
public static final String EMPIREDAYQUEST_IMP_CRASHSITE_04_STRUC = "crash_site_04_imp_structures";
|
|
public static final String EMPIREDAYQUEST_IMP_CRASHSITE_05_STRUC = "crash_site_05_imp_structures";
|
|
public static final String EMPIREDAYQUEST_IMP_CRASHSITE_06_STRUC = "crash_site_06_imp_structures";
|
|
public static final String EMPIREDAYQUEST_REB_CRASHSITE_01_DOMESTICS = "crash_site_01_reb_domestics";
|
|
public static final String EMPIREDAYQUEST_REB_CRASHSITE_02_DOMESTICS = "crash_site_02_reb_domestics";
|
|
public static final String EMPIREDAYQUEST_REB_CRASHSITE_03_DOMESTICS = "crash_site_03_reb_domestics";
|
|
public static final String EMPIREDAYQUEST_REB_CRASHSITE_04_DOMESTICS = "crash_site_04_reb_domestics";
|
|
public static final String EMPIREDAYQUEST_REB_CRASHSITE_05_DOMESTICS = "crash_site_05_reb_domestics";
|
|
public static final String EMPIREDAYQUEST_REB_CRASHSITE_06_DOMESTICS = "crash_site_06_reb_domestics";
|
|
public static final String EMPIREDAYQUEST_REB_CRASHSITE_01_ENG = "crash_site_01_reb_engineering";
|
|
public static final String EMPIREDAYQUEST_REB_CRASHSITE_02_ENG = "crash_site_02_reb_engineering";
|
|
public static final String EMPIREDAYQUEST_REB_CRASHSITE_03_ENG = "crash_site_03_reb_engineering";
|
|
public static final String EMPIREDAYQUEST_REB_CRASHSITE_04_ENG = "crash_site_04_reb_engineering";
|
|
public static final String EMPIREDAYQUEST_REB_CRASHSITE_05_ENG = "crash_site_05_reb_engineering";
|
|
public static final String EMPIREDAYQUEST_REB_CRASHSITE_06_ENG = "crash_site_06_reb_engineering";
|
|
public static final String EMPIREDAYQUEST_REB_CRASHSITE_01_MUNITIONS = "crash_site_01_reb_munitions";
|
|
public static final String EMPIREDAYQUEST_REB_CRASHSITE_02_MUNITIONS = "crash_site_02_reb_munitions";
|
|
public static final String EMPIREDAYQUEST_REB_CRASHSITE_03_MUNITIONS = "crash_site_03_reb_munitions";
|
|
public static final String EMPIREDAYQUEST_REB_CRASHSITE_04_MUNITIONS = "crash_site_04_reb_munitions";
|
|
public static final String EMPIREDAYQUEST_REB_CRASHSITE_05_MUNITIONS = "crash_site_05_reb_munitions";
|
|
public static final String EMPIREDAYQUEST_REB_CRASHSITE_06_MUNITIONS = "crash_site_06_reb_munitions";
|
|
public static final String EMPIREDAYQUEST_REB_CRASHSITE_01_STRUC = "crash_site_01_reb_structures";
|
|
public static final String EMPIREDAYQUEST_REB_CRASHSITE_02_STRUC = "crash_site_02_reb_structures";
|
|
public static final String EMPIREDAYQUEST_REB_CRASHSITE_03_STRUC = "crash_site_03_reb_structures";
|
|
public static final String EMPIREDAYQUEST_REB_CRASHSITE_04_STRUC = "crash_site_04_reb_structures";
|
|
public static final String EMPIREDAYQUEST_REB_CRASHSITE_05_STRUC = "crash_site_05_reb_structures";
|
|
public static final String EMPIREDAYQUEST_REB_CRASHSITE_06_STRUC = "crash_site_06_reb_structures";
|
|
public static final String EMPIREDAYQUEST_REB_ENTERTAINER_01 = "entertainer_rebel_01";
|
|
public static final String EMPIREDAYQUEST_REB_ENTERTAINER_02 = "entertainer_rebel_02";
|
|
public static final String EMPIREDAYQUEST_REB_ENTERTAINER_03 = "entertainer_rebel_03";
|
|
public static final String EMPIREDAYQUEST_REB_ENTERTAINER_04 = "entertainer_rebel_04";
|
|
public static final String EMPIREDAYQUEST_REB_ENTERTAINER_05 = "entertainer_rebel_05";
|
|
public static final String EMPIREDAYQUEST_REB_ENTERTAINER_06 = "entertainer_rebel_06";
|
|
public static final String EMPIREDAYQUEST_IMP_ENTERTAINER_01 = "entertainer_imperial_01";
|
|
public static final String EMPIREDAYQUEST_IMP_ENTERTAINER_02 = "entertainer_imperial_02";
|
|
public static final String EMPIREDAYQUEST_IMP_ENTERTAINER_03 = "entertainer_imperial_03";
|
|
public static final String EMPIREDAYQUEST_IMP_ENTERTAINER_04 = "entertainer_imperial_04";
|
|
public static final String EMPIREDAYQUEST_IMP_ENTERTAINER_05 = "entertainer_imperial_05";
|
|
public static final String EMPIREDAYQUEST_IMP_ENTERTAINER_06 = "entertainer_imperial_06";
|
|
public static final String EMPIREDAYQUEST_REB_COMBAT_01 = "recovery_quest_rebel_01";
|
|
public static final String EMPIREDAYQUEST_REB_COMBAT_02 = "recovery_quest_rebel_02";
|
|
public static final String EMPIREDAYQUEST_REB_COMBAT_03 = "recovery_quest_rebel_03";
|
|
public static final String EMPIREDAYQUEST_REB_COMBAT_04 = "recovery_quest_rebel_04";
|
|
public static final String EMPIREDAYQUEST_REB_COMBAT_05 = "recovery_quest_rebel_05";
|
|
public static final String EMPIREDAYQUEST_REB_COMBAT_06 = "recovery_quest_rebel_06";
|
|
public static final String EMPIREDAYQUEST_REB_COMBAT_07 = "recovery_quest_rebel_07";
|
|
public static final String EMPIREDAYQUEST_REB_COMBAT_AUTOGRAPH = "recovery_quest_rebel_autograph";
|
|
public static final String EMPIREDAYQUEST_REB_CORPSE_SIGNAL = "foundIntelRebelEmpireDay";
|
|
public static final String EMPIREDAYQUEST_REB_CORPSE_TASK = "waitForIntelRebelEmpireDay";
|
|
public static final String EMPIREDAYQUEST_IMP_COMBAT_01 = "recovery_quest_imperial_01";
|
|
public static final String EMPIREDAYQUEST_IMP_COMBAT_02 = "recovery_quest_imperial_02";
|
|
public static final String EMPIREDAYQUEST_IMP_COMBAT_03 = "recovery_quest_imperial_03";
|
|
public static final String EMPIREDAYQUEST_IMP_COMBAT_04 = "recovery_quest_imperial_04";
|
|
public static final String EMPIREDAYQUEST_IMP_COMBAT_05 = "recovery_quest_imperial_05";
|
|
public static final String EMPIREDAYQUEST_IMP_COMBAT_06 = "recovery_quest_imperial_06";
|
|
public static final String EMPIREDAYQUEST_IMP_COMBAT_07 = "recovery_quest_imperial_07";
|
|
public static final String EMPIREDAYQUEST_IMP_COMBAT_NUMBER = "recovery_quest_imperial_number";
|
|
public static final String EMPIREDAYQUEST_IMP_CORPSE_SIGNAL = "foundIntelImperialEmpireDay";
|
|
public static final String EMPIREDAYQUEST_IMP_CORPSE_TASK = "waitForIntelImperialEmpireDay";
|
|
public static final String VOL_TRIGGER_NAME_PREFIX = "empire_day_detainment_";
|
|
public static final String IMPERIAL_FLYBY_PARTICLE_01 = "appearance/pt_trailing_distant_tie_fighters_slower_s01.prt";
|
|
public static final String IMPERIAL_FLYBY_PARTICLE_02 = "appearance/pt_trailing_distant_tie_fighters_slower_s02.prt";
|
|
public static final String REBEL_FLYBY_PARTICLE_01 = "appearance/pt_trailing_distant_rebel_ships_slow_s01.prt";
|
|
public static final String REBEL_FLYBY_PARTICLE_02 = "appearance/pt_trailing_distant_rebel_ships_slow_s02.prt";
|
|
public static final String REBEL_FLYBY_PARTICLE_03 = "appearance/pt_trailing_distant_rebel_ships_slow_s03.prt";
|
|
public static final String REBEL_FLYBY_PARTICLE_04 = "appearance/pt_trailing_distant_rebel_ships_slow_s04.prt";
|
|
public static final string_id DARTH_BADGE_1 = new string_id(EMP_DAY, "imp_darth_badge_1");
|
|
public static final string_id DARTH_BADGE_2 = new string_id(EMP_DAY, "imp_darth_badge_2");
|
|
public static final string_id LEIA_BADGE_1 = new string_id(EMP_DAY, "leia_badge_1");
|
|
public static final string_id LEIA_BADGE_2 = new string_id(EMP_DAY, "leia_badge_2");
|
|
public static final string_id BOW = new string_id(EMP_DAY, "bow");
|
|
public static final int MAXIMUM_EMPIRE_DAY_WINNERS = 3;
|
|
public static final int EMPIRE_DAY_SECONDS_TO_START = 900;
|
|
public static final float OBJECT_NEAR_CHECK_RANGE_250M = 250.0f;
|
|
public static final float OBJECT_NEAR_CHECK_RANGE_200M = 200.0f;
|
|
public static final float OBJECT_NEAR_CHECK_RANGE_100M = 100.0f;
|
|
public static final float OBJECT_NEAR_CHECK_RANGE_2M = 2.0f;
|
|
public static final float OBJECT_NEAR_CHECK_RANGE_10M = 10.0f;
|
|
public static final float NPC_ATTACK_RANGE = 30.0f;
|
|
public static final int IMPERIAL_PLAYER = 1;
|
|
public static final int REBEL_PLAYER = 2;
|
|
public static final int NEUTRAL_PLAYER = 3;
|
|
public static final int MIN_DESTROY_TIME = 60;
|
|
public static final int MAX_DESTROY_TIME = 180;
|
|
public static final int DAILY_COUNTER_LIMIT = 9;
|
|
public static final int TOKEN_AMOUNT_COMBATANT = 1;
|
|
public static final int TOKEN_AMOUNT_SF = 2;
|
|
public static final int GCW_AMOUNT_SF = 10;
|
|
public static final int GCW_AMOUNT_COMBATANT = 5;
|
|
public static final int DAILY_TIME = 10;
|
|
public static final int MAX_NUMBER_OF_PLANET_HIGH_SCORES = 5;
|
|
public static final float VOL_TRIGGER_RADIUS = 20f;
|
|
public static final float EMPIRE_DAY_EVENT_START_DELAY = 700.f;
|
|
public static final String LOVEDAY_CUPID_MANAGER_NAME = "loveday_cupid_manager";
|
|
public static final String LOVEDAY_CUPID_ELEMENT_NAME = "loveday_cupid_spawner_";
|
|
public static final String LOVEDAY_CUPID_SPAWNER_CITY_VAR = "loveday_city";
|
|
public static final String GETTING_CUPID_SPAWNER_IDS = "manager_gettingCupidSpawnerIds";
|
|
public static final String[] LOVEDAY_LOCATIONS =
|
|
{
|
|
"endor",
|
|
"kaadara",
|
|
"tyrena"
|
|
};
|
|
public static final String ROMANCE_TRAITS_TABLE = "datatables/event/loveday/playing_cupid.iff";
|
|
public static final String[] MATCHMAKING_COMPANIONS =
|
|
{
|
|
"loveday_romance_seeker_familiar_male_01",
|
|
"loveday_romance_seeker_familiar_male_02",
|
|
"loveday_romance_seeker_familiar_male_03",
|
|
"loveday_romance_seeker_familiar_male_04",
|
|
"loveday_romance_seeker_familiar_female_01",
|
|
"loveday_romance_seeker_familiar_female_02",
|
|
"loveday_romance_seeker_familiar_female_03",
|
|
"loveday_romance_seeker_familiar_female_04"
|
|
};
|
|
public static final String[] MATCHMAKING_COMPANIONS_SLOTS =
|
|
{
|
|
"loveday_2010_matched_jeffrey",
|
|
"loveday_2010_matched_matthew",
|
|
"loveday_2010_matched_gerald",
|
|
"loveday_2010_matched_daniel",
|
|
"loveday_2010_matched_caroline",
|
|
"loveday_2010_matched_francine",
|
|
"loveday_2010_matched_julia",
|
|
"loveday_2010_matched_ellen"
|
|
};
|
|
public static final String[] ALL_IMPERIAL_CRATE_TEMPLATES =
|
|
{
|
|
"object/tangible/holiday/empire_day/e11_gas_cartridge_crate.iff",
|
|
"object/tangible/holiday/empire_day/imperial_second_lieutenant_rank_crate.iff",
|
|
"object/tangible/holiday/empire_day/improved_mouse_droid_arm_crate.iff",
|
|
"object/tangible/holiday/empire_day/command_console_comscan_subcomponent_crate.iff"
|
|
};
|
|
public static final String[] ALL_REBEL_CRATE_TEMPLATES =
|
|
{
|
|
"object/tangible/holiday/empire_day/aa1n_vebrobrain_protocol_droid_component_crate.iff",
|
|
"object/tangible/holiday/empire_day/rebel_trooper_field_rations_crate.iff",
|
|
"object/tangible/holiday/empire_day/crew_carrier_steering_mechanism_crate.iff",
|
|
"object/tangible/holiday/empire_day/dh17_gas_cartridge_crate.iff"
|
|
};
|
|
public static final String[] ALL_IMPERIAL_QUESTS =
|
|
{
|
|
EMPIREDAYQUEST_IMP_CRASHSITE_01_DOMESTICS,
|
|
EMPIREDAYQUEST_IMP_CRASHSITE_02_DOMESTICS,
|
|
EMPIREDAYQUEST_IMP_CRASHSITE_03_DOMESTICS,
|
|
EMPIREDAYQUEST_IMP_CRASHSITE_04_DOMESTICS,
|
|
EMPIREDAYQUEST_IMP_CRASHSITE_05_DOMESTICS,
|
|
EMPIREDAYQUEST_IMP_CRASHSITE_06_DOMESTICS,
|
|
EMPIREDAYQUEST_IMP_CRASHSITE_01_ENG,
|
|
EMPIREDAYQUEST_IMP_CRASHSITE_02_ENG,
|
|
EMPIREDAYQUEST_IMP_CRASHSITE_03_ENG,
|
|
EMPIREDAYQUEST_IMP_CRASHSITE_04_ENG,
|
|
EMPIREDAYQUEST_IMP_CRASHSITE_05_ENG,
|
|
EMPIREDAYQUEST_IMP_CRASHSITE_06_ENG,
|
|
EMPIREDAYQUEST_IMP_CRASHSITE_01_MUNITIONS,
|
|
EMPIREDAYQUEST_IMP_CRASHSITE_02_MUNITIONS,
|
|
EMPIREDAYQUEST_IMP_CRASHSITE_03_MUNITIONS,
|
|
EMPIREDAYQUEST_IMP_CRASHSITE_04_MUNITIONS,
|
|
EMPIREDAYQUEST_IMP_CRASHSITE_05_MUNITIONS,
|
|
EMPIREDAYQUEST_IMP_CRASHSITE_06_MUNITIONS,
|
|
EMPIREDAYQUEST_IMP_CRASHSITE_01_STRUC,
|
|
EMPIREDAYQUEST_IMP_CRASHSITE_02_STRUC,
|
|
EMPIREDAYQUEST_IMP_CRASHSITE_03_STRUC,
|
|
EMPIREDAYQUEST_IMP_CRASHSITE_04_STRUC,
|
|
EMPIREDAYQUEST_IMP_CRASHSITE_05_STRUC,
|
|
EMPIREDAYQUEST_IMP_CRASHSITE_06_STRUC
|
|
};
|
|
public static final String[] ALL_REBEL_QUESTS =
|
|
{
|
|
EMPIREDAYQUEST_REB_CRASHSITE_01_DOMESTICS,
|
|
EMPIREDAYQUEST_REB_CRASHSITE_02_DOMESTICS,
|
|
EMPIREDAYQUEST_REB_CRASHSITE_03_DOMESTICS,
|
|
EMPIREDAYQUEST_REB_CRASHSITE_04_DOMESTICS,
|
|
EMPIREDAYQUEST_REB_CRASHSITE_05_DOMESTICS,
|
|
EMPIREDAYQUEST_REB_CRASHSITE_06_DOMESTICS,
|
|
EMPIREDAYQUEST_REB_CRASHSITE_01_ENG,
|
|
EMPIREDAYQUEST_REB_CRASHSITE_02_ENG,
|
|
EMPIREDAYQUEST_REB_CRASHSITE_03_ENG,
|
|
EMPIREDAYQUEST_REB_CRASHSITE_04_ENG,
|
|
EMPIREDAYQUEST_REB_CRASHSITE_05_ENG,
|
|
EMPIREDAYQUEST_REB_CRASHSITE_06_ENG,
|
|
EMPIREDAYQUEST_REB_CRASHSITE_01_MUNITIONS,
|
|
EMPIREDAYQUEST_REB_CRASHSITE_02_MUNITIONS,
|
|
EMPIREDAYQUEST_REB_CRASHSITE_03_MUNITIONS,
|
|
EMPIREDAYQUEST_REB_CRASHSITE_04_MUNITIONS,
|
|
EMPIREDAYQUEST_REB_CRASHSITE_05_MUNITIONS,
|
|
EMPIREDAYQUEST_REB_CRASHSITE_06_MUNITIONS,
|
|
EMPIREDAYQUEST_REB_CRASHSITE_01_STRUC,
|
|
EMPIREDAYQUEST_REB_CRASHSITE_02_STRUC,
|
|
EMPIREDAYQUEST_REB_CRASHSITE_03_STRUC,
|
|
EMPIREDAYQUEST_REB_CRASHSITE_04_STRUC,
|
|
EMPIREDAYQUEST_REB_CRASHSITE_05_STRUC,
|
|
EMPIREDAYQUEST_REB_CRASHSITE_06_STRUC
|
|
};
|
|
public static final String[] ALL_IMPERIAL_QUEST_TEMPLATES =
|
|
{
|
|
ALL_IMPERIAL_CRATE_TEMPLATES[1],
|
|
ALL_IMPERIAL_CRATE_TEMPLATES[1],
|
|
ALL_IMPERIAL_CRATE_TEMPLATES[1],
|
|
ALL_IMPERIAL_CRATE_TEMPLATES[1],
|
|
ALL_IMPERIAL_CRATE_TEMPLATES[1],
|
|
ALL_IMPERIAL_CRATE_TEMPLATES[1],
|
|
ALL_IMPERIAL_CRATE_TEMPLATES[2],
|
|
ALL_IMPERIAL_CRATE_TEMPLATES[2],
|
|
ALL_IMPERIAL_CRATE_TEMPLATES[2],
|
|
ALL_IMPERIAL_CRATE_TEMPLATES[2],
|
|
ALL_IMPERIAL_CRATE_TEMPLATES[2],
|
|
ALL_IMPERIAL_CRATE_TEMPLATES[2],
|
|
ALL_IMPERIAL_CRATE_TEMPLATES[0],
|
|
ALL_IMPERIAL_CRATE_TEMPLATES[0],
|
|
ALL_IMPERIAL_CRATE_TEMPLATES[0],
|
|
ALL_IMPERIAL_CRATE_TEMPLATES[0],
|
|
ALL_IMPERIAL_CRATE_TEMPLATES[0],
|
|
ALL_IMPERIAL_CRATE_TEMPLATES[0],
|
|
ALL_IMPERIAL_CRATE_TEMPLATES[3],
|
|
ALL_IMPERIAL_CRATE_TEMPLATES[3],
|
|
ALL_IMPERIAL_CRATE_TEMPLATES[3],
|
|
ALL_IMPERIAL_CRATE_TEMPLATES[3],
|
|
ALL_IMPERIAL_CRATE_TEMPLATES[3],
|
|
ALL_IMPERIAL_CRATE_TEMPLATES[3]
|
|
};
|
|
public static final String[] ALL_REBEL_QUEST_TEMPLATES =
|
|
{
|
|
ALL_REBEL_CRATE_TEMPLATES[1],
|
|
ALL_REBEL_CRATE_TEMPLATES[1],
|
|
ALL_REBEL_CRATE_TEMPLATES[1],
|
|
ALL_REBEL_CRATE_TEMPLATES[1],
|
|
ALL_REBEL_CRATE_TEMPLATES[1],
|
|
ALL_REBEL_CRATE_TEMPLATES[1],
|
|
ALL_REBEL_CRATE_TEMPLATES[0],
|
|
ALL_REBEL_CRATE_TEMPLATES[0],
|
|
ALL_REBEL_CRATE_TEMPLATES[0],
|
|
ALL_REBEL_CRATE_TEMPLATES[0],
|
|
ALL_REBEL_CRATE_TEMPLATES[0],
|
|
ALL_REBEL_CRATE_TEMPLATES[0],
|
|
ALL_REBEL_CRATE_TEMPLATES[3],
|
|
ALL_REBEL_CRATE_TEMPLATES[3],
|
|
ALL_REBEL_CRATE_TEMPLATES[3],
|
|
ALL_REBEL_CRATE_TEMPLATES[3],
|
|
ALL_REBEL_CRATE_TEMPLATES[3],
|
|
ALL_REBEL_CRATE_TEMPLATES[3],
|
|
ALL_REBEL_CRATE_TEMPLATES[2],
|
|
ALL_REBEL_CRATE_TEMPLATES[2],
|
|
ALL_REBEL_CRATE_TEMPLATES[2],
|
|
ALL_REBEL_CRATE_TEMPLATES[2],
|
|
ALL_REBEL_CRATE_TEMPLATES[2],
|
|
ALL_REBEL_CRATE_TEMPLATES[2]
|
|
};
|
|
public static final String[] ALL_REBEL_ENTERTAINER_QUESTS =
|
|
{
|
|
EMPIREDAYQUEST_REB_ENTERTAINER_01,
|
|
EMPIREDAYQUEST_REB_ENTERTAINER_02,
|
|
EMPIREDAYQUEST_REB_ENTERTAINER_03,
|
|
EMPIREDAYQUEST_REB_ENTERTAINER_04,
|
|
EMPIREDAYQUEST_REB_ENTERTAINER_05,
|
|
EMPIREDAYQUEST_REB_ENTERTAINER_06
|
|
};
|
|
public static final String[] ALL_IMPERIAL_ENTERTAINER_QUESTS =
|
|
{
|
|
EMPIREDAYQUEST_IMP_ENTERTAINER_01,
|
|
EMPIREDAYQUEST_IMP_ENTERTAINER_02,
|
|
EMPIREDAYQUEST_IMP_ENTERTAINER_03,
|
|
EMPIREDAYQUEST_IMP_ENTERTAINER_04,
|
|
EMPIREDAYQUEST_IMP_ENTERTAINER_05,
|
|
EMPIREDAYQUEST_IMP_ENTERTAINER_06
|
|
};
|
|
public static final String[] DEFAULT_HIGH_SCORE_LIST =
|
|
{
|
|
"DevH",
|
|
"Loche",
|
|
"Milbarge",
|
|
"Jaskell",
|
|
"AdeptStrain",
|
|
"DeadMeat",
|
|
"CancelAutoRun",
|
|
"Dotanuki",
|
|
"Tereb",
|
|
"Hanse",
|
|
"Teesquared",
|
|
"DevH",
|
|
"Loche",
|
|
"Milbarge",
|
|
"Jaskell",
|
|
"AdeptStrain",
|
|
"Swede",
|
|
"Blixtev",
|
|
"DeadMeat",
|
|
"CancelAutoRun",
|
|
"Dotanuki",
|
|
"Tereb",
|
|
"Hanse",
|
|
"Teesquared"
|
|
};
|
|
public static boolean hasLovedayRomanceSeekerCompanion(obj_id player) throws InterruptedException
|
|
{
|
|
return isIdValid(getLovedayRomanceSeekerCompanionControlDevice(player));
|
|
}
|
|
public static obj_id getLovedayRomanceSeekerCompanionControlDevice(obj_id player) throws InterruptedException
|
|
{
|
|
obj_id datapad = utils.getPlayerDatapad(player);
|
|
if (isIdValid(datapad))
|
|
{
|
|
obj_id[] dataItems = getContents(datapad);
|
|
if (dataItems != null || dataItems.length > 0)
|
|
{
|
|
for (int i = 0; i < dataItems.length; i++)
|
|
{
|
|
obj_id dataItem = dataItems[i];
|
|
if (hasObjVar(dataItem, "pet.creatureName"))
|
|
{
|
|
if ((getStringObjVar(dataItem, "pet.creatureName")).startsWith("loveday_romance_seeker_familiar"))
|
|
{
|
|
return dataItem;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
return obj_id.NULL_ID;
|
|
}
|
|
public static boolean grantLovedayRomanceSeekerCompanion(obj_id player) throws InterruptedException
|
|
{
|
|
if (!hasLovedayRomanceSeekerCompanion(player))
|
|
{
|
|
String seekerChoice = MATCHMAKING_COMPANIONS[rand(0, MATCHMAKING_COMPANIONS.length - 1)];
|
|
if (utils.hasScriptVar(player, "loveday.todaysCompanion"))
|
|
{
|
|
seekerChoice = utils.getStringScriptVar(player, "loveday.todaysCompanion");
|
|
}
|
|
obj_id controlDevice = pet_lib.generatePetOfTypeFamiliar(seekerChoice, player);
|
|
if (isIdValid(controlDevice))
|
|
{
|
|
setObjVar(controlDevice, "item.lifespan", 86400);
|
|
attachScript(controlDevice, "item.special.temporary_item");
|
|
int chosenSet = getRomanticTraitsSet();
|
|
if (utils.hasScriptVar(player, "loveday.todaysCompanionTraits"))
|
|
{
|
|
chosenSet = utils.getIntScriptVar(player, "loveday.todaysCompanionTraits");
|
|
}
|
|
setRomanticTraits(controlDevice, chosenSet);
|
|
utils.setScriptVar(player, "loveday.todaysCompanionTraits", chosenSet);
|
|
return true;
|
|
}
|
|
}
|
|
return false;
|
|
}
|
|
public static void checkForAndGrantLovedayMatchmakingSlot(obj_id player, String companionType) throws InterruptedException
|
|
{
|
|
if (!isIdValid(player))
|
|
{
|
|
return;
|
|
}
|
|
if (companionType == null || companionType.length() < 1)
|
|
{
|
|
return;
|
|
}
|
|
int index = utils.getElementPositionInArray(MATCHMAKING_COMPANIONS, companionType);
|
|
if (index > -1)
|
|
{
|
|
String companionSlotName = MATCHMAKING_COMPANIONS_SLOTS[index];
|
|
if (!hasCompletedCollectionSlot(player, companionSlotName))
|
|
{
|
|
modifyCollectionSlotValue(player, companionSlotName, 1);
|
|
}
|
|
}
|
|
return;
|
|
}
|
|
public static int getNumRomanticTraitsSets() throws InterruptedException
|
|
{
|
|
int numRows = dataTableGetNumRows(ROMANCE_TRAITS_TABLE);
|
|
return numRows;
|
|
}
|
|
public static int getRomanticTraitsSet() throws InterruptedException
|
|
{
|
|
int numSets = getNumRomanticTraitsSets();
|
|
int chosenSet = rand(0, numSets - 1);
|
|
return chosenSet;
|
|
}
|
|
public static void setRomanticTraits(obj_id npc, int chosenSet) throws InterruptedException
|
|
{
|
|
dictionary traits = dataTableGetRow(ROMANCE_TRAITS_TABLE, chosenSet);
|
|
setObjVar(npc, "playingCupid.traitSet", chosenSet);
|
|
setObjVar(npc, "playingCupid.trait_01", traits.getString("trait_01"));
|
|
setObjVar(npc, "playingCupid.trait_02", traits.getString("trait_02"));
|
|
setObjVar(npc, "playingCupid.trait_03", traits.getString("trait_03"));
|
|
setObjVar(npc, "playingCupid.trait_04", traits.getString("trait_04"));
|
|
setObjVar(npc, "playingCupid.trait_05", traits.getString("trait_05"));
|
|
return;
|
|
}
|
|
public static boolean playEmpireDayFireWorksAndFlyBys(obj_id masterObject, int faction) throws InterruptedException
|
|
{
|
|
CustomerServiceLog("holidayEvent", "emperor_statue.playFireWorksAndFlyBys: Function initialized.");
|
|
if (!isValidId(masterObject) || !exists(masterObject))
|
|
{
|
|
return false;
|
|
}
|
|
if (faction <= 0)
|
|
{
|
|
return false;
|
|
}
|
|
messageTo(masterObject, "launchRandomNonFactionalFirework", null, 3.0f, false);
|
|
messageTo(masterObject, "launchRandomNonFactionalFirework", null, 5.0f, false);
|
|
messageTo(masterObject, "launchRandomNonFactionalFirework", null, 6.0f, false);
|
|
messageTo(masterObject, "launchRandomNonFactionalFirework", null, 10.0f, false);
|
|
messageTo(masterObject, "launchRandomNonFactionalFirework", null, 5.0f, false);
|
|
messageTo(masterObject, "launchRandomNonFactionalFirework", null, 7.0f, false);
|
|
messageTo(masterObject, "launchRandomNonFactionalFirework", null, 9.0f, false);
|
|
messageTo(masterObject, "launchRandomNonFactionalFirework", null, 11.0f, false);
|
|
messageTo(masterObject, "launchRandomNonFactionalFirework", null, 13.0f, false);
|
|
messageTo(masterObject, "launchRandomNonFactionalFirework", null, 15.0f, false);
|
|
messageTo(masterObject, "launchRandomNonFactionalFirework", null, 16.0f, false);
|
|
messageTo(masterObject, "launchRandomNonFactionalFirework", null, 17.0f, false);
|
|
messageTo(masterObject, "launchRandomNonFactionalFirework", null, 18.0f, false);
|
|
messageTo(masterObject, "launchRandomNonFactionalFirework", null, 18.0f, false);
|
|
messageTo(masterObject, "launchRandomNonFactionalFirework", null, 18.0f, false);
|
|
messageTo(masterObject, "launchRandomNonFactionalFirework", null, 18.0f, false);
|
|
messageTo(masterObject, "launchRandomNonFactionalFirework", null, 19.0f, false);
|
|
messageTo(masterObject, "launchRandomNonFactionalFirework", null, 19.0f, false);
|
|
messageTo(masterObject, "launchRandomNonFactionalFirework", null, 19.0f, false);
|
|
messageTo(masterObject, "launchRandomNonFactionalFirework", null, 19.0f, false);
|
|
messageTo(masterObject, "launchRandomNonFactionalFirework", null, 20.0f, false);
|
|
messageTo(masterObject, "launchRandomNonFactionalFirework", null, 20.0f, false);
|
|
messageTo(masterObject, "launchRandomNonFactionalFirework", null, 20.0f, false);
|
|
messageTo(masterObject, "launchRandomNonFactionalFirework", null, 20.0f, false);
|
|
messageTo(masterObject, "launchFactionalFirework", null, 5.0f, false);
|
|
messageTo(masterObject, "launchFactionalFirework", null, 10.0f, false);
|
|
messageTo(masterObject, "launchFactionalFirework", null, 15.0f, false);
|
|
messageTo(masterObject, "launchFactionalFirework", null, 20.0f, false);
|
|
if (faction == IMPERIAL_PLAYER)
|
|
{
|
|
messageTo(masterObject, "launchRandomTieFighterFlyBy", null, 4, false);
|
|
messageTo(masterObject, "launchRandomTieFighterFlyBy", null, 8, false);
|
|
messageTo(masterObject, "launchRandomTieFighterFlyBy", null, 12, false);
|
|
messageTo(masterObject, "launchRandomTieFighterFlyBy", null, 2, false);
|
|
messageTo(masterObject, "launchRandomTieFighterFlyBy", null, 6, false);
|
|
messageTo(masterObject, "launchRandomTieFighterFlyBy", null, 10, false);
|
|
}
|
|
else
|
|
{
|
|
messageTo(masterObject, "launchRandomRebelShipFlyBy", null, 4, false);
|
|
messageTo(masterObject, "launchRandomRebelShipFlyBy", null, 8, false);
|
|
messageTo(masterObject, "launchRandomRebelShipFlyBy", null, 12, false);
|
|
messageTo(masterObject, "launchRandomRebelShipFlyBy", null, 2, false);
|
|
messageTo(masterObject, "launchRandomRebelShipFlyBy", null, 6, false);
|
|
messageTo(masterObject, "launchRandomRebelShipFlyBy", null, 10, false);
|
|
}
|
|
return true;
|
|
}
|
|
public static String getEmpireDayEligibility(obj_id player, int faction) throws InterruptedException
|
|
{
|
|
if (!isValidId(player) || !exists(player))
|
|
{
|
|
return null;
|
|
}
|
|
if (faction <= 0)
|
|
{
|
|
return null;
|
|
}
|
|
if (holiday.isEmpireDayPlayerEligible(player, faction))
|
|
{
|
|
if (faction == IMPERIAL_PLAYER)
|
|
{
|
|
return "You are eligible for the Champion of Empire Day badge from Darth Vader.";
|
|
}
|
|
else
|
|
{
|
|
return "You are eligible for the Champion of Remembrance Day badge from Princess Leia.";
|
|
}
|
|
}
|
|
if (faction == IMPERIAL_PLAYER)
|
|
{
|
|
return "You are NOT eligible for the Champion of Empire Day badge from Darth Vader.";
|
|
}
|
|
else
|
|
{
|
|
return "You are NOT eligible for the Champion of Remembrance Day badge from Princess Leia.";
|
|
}
|
|
}
|
|
public static boolean isEmpireDayPlayerEligible(obj_id player, int faction) throws InterruptedException
|
|
{
|
|
if (!isValidId(player) || !exists(player))
|
|
{
|
|
return false;
|
|
}
|
|
if (faction == IMPERIAL_PLAYER && !factions.isImperial(player))
|
|
{
|
|
return false;
|
|
}
|
|
if (faction == REBEL_PLAYER && !factions.isRebel(player))
|
|
{
|
|
return false;
|
|
}
|
|
int tooYoung = getCurrentBirthDate() - getPlayerBirthDate(player);
|
|
if (tooYoung < 10)
|
|
{
|
|
return false;
|
|
}
|
|
if (isPlayerConnected(player) && !isAwayFromKeyBoard(player) && !hasCompletedCollectionSlot(player, holiday.EMPIRE_DAY_CHAMPION_BADGE) && !hasCompletedCollectionSlot(player, holiday.REMEMBRANCE_DAY_CHAMPION_BADGE) && !isGod(player) && !isDead(player) && !ai_lib.isInCombat(player) && !isIncapacitated(player) && !utils.isFreeTrial(player) && isInWorldCell(player))
|
|
{
|
|
return true;
|
|
}
|
|
return false;
|
|
}
|
|
public static obj_id[] getEmpireDayWinningPlayers(obj_id holidayObject, Vector eligiblePlayers) throws InterruptedException
|
|
{
|
|
CustomerServiceLog("holidayEvent", "holiday.getEmpireDayWinningPlayers: init");
|
|
if (!isIdValid(holidayObject) || !exists(holidayObject))
|
|
{
|
|
return null;
|
|
}
|
|
if (eligiblePlayers == null || eligiblePlayers.size() <= 0)
|
|
{
|
|
return null;
|
|
}
|
|
int maxEmpireDayWinners = MAXIMUM_EMPIRE_DAY_WINNERS;
|
|
String empiredayWinnerConfig = getConfigSetting("GameServer", "empireday_ceremony_winners");
|
|
if (empiredayWinnerConfig != null && utils.stringToInt(empiredayWinnerConfig) > -1)
|
|
{
|
|
CustomerServiceLog("holidayEvent", "holiday.getEmpireDayWinningPlayers: The max badge winners was: " + maxEmpireDayWinners + " but there is a server config that might overwrite this amount.");
|
|
int configWinners = utils.stringToInt(empiredayWinnerConfig);
|
|
CustomerServiceLog("holidayEvent", "holiday.getEmpireDayWinningPlayers: The server config shows the max badge winners should be: " + configWinners + " checking to see if that is less or more than the current amount.");
|
|
if (configWinners != maxEmpireDayWinners)
|
|
{
|
|
CustomerServiceLog("holidayEvent", "holiday.getEmpireDayWinningPlayers: The server config if a different amount than the current max so we are using the server config.");
|
|
maxEmpireDayWinners = configWinners;
|
|
}
|
|
}
|
|
int originalListSize = eligiblePlayers.size();
|
|
if (originalListSize <= maxEmpireDayWinners)
|
|
{
|
|
CustomerServiceLog("holidayEvent", "holiday.getEmpireDayWinningPlayers: There is less than " + maxEmpireDayWinners + " or exactly " + maxEmpireDayWinners + " winning players");
|
|
for (int i = 0; i < eligiblePlayers.size(); ++i)
|
|
{
|
|
CustomerServiceLog("holidayEvent", "holiday.getEmpireDayWinningPlayers: Player " + getPlayerName(((obj_id)eligiblePlayers.get(i))) + "(" + ((obj_id)eligiblePlayers.get(i)) + ") was selected for badge.");
|
|
}
|
|
obj_id[] _eligiblePlayers = new obj_id[0];
|
|
if (eligiblePlayers != null)
|
|
{
|
|
_eligiblePlayers = new obj_id[eligiblePlayers.size()];
|
|
eligiblePlayers.toArray(_eligiblePlayers);
|
|
}
|
|
return _eligiblePlayers;
|
|
}
|
|
CustomerServiceLog("holidayEvent", "holiday.getEmpireDayWinningPlayers: creating lists of players and winners.");
|
|
Vector winningPlayers = new Vector();
|
|
winningPlayers.setSize(0);
|
|
CustomerServiceLog("holidayEvent", "holiday.getEmpireDayWinningPlayers: originalListSize: " + originalListSize);
|
|
for (int i = 0; i < maxEmpireDayWinners; i++)
|
|
{
|
|
int randomWinner = rand(0, (eligiblePlayers.size() - 1));
|
|
if (randomWinner > (eligiblePlayers.size() - 1))
|
|
{
|
|
continue;
|
|
}
|
|
obj_id playerId = ((obj_id)eligiblePlayers.get(randomWinner));
|
|
if (!isIdValid(playerId))
|
|
{
|
|
continue;
|
|
}
|
|
String playerName = getPlayerName(playerId);
|
|
winningPlayers.add(playerId);
|
|
CustomerServiceLog("holidayEvent", "holiday.getEmpireDayWinningPlayers: Player " + playerName + "(" + playerId + ") was selected for badge.");
|
|
eligiblePlayers.remove(playerId);
|
|
if (eligiblePlayers.size() >= (originalListSize - i))
|
|
{
|
|
CustomerServiceLog("holidayEvent", "holiday.getEmpireDayWinningPlayers: Error with eligiblePlayers list. It did not remove a player on iteration: " + i);
|
|
break;
|
|
}
|
|
else if (winningPlayers.size() <= (0 + i))
|
|
{
|
|
CustomerServiceLog("holidayEvent", "holiday.getEmpireDayWinningPlayers: Error with winningPlayers list. Did not add a player properly on iteration: " + i);
|
|
break;
|
|
}
|
|
}
|
|
obj_id[] _winningPlayers = new obj_id[0];
|
|
if (winningPlayers != null)
|
|
{
|
|
_winningPlayers = new obj_id[winningPlayers.size()];
|
|
winningPlayers.toArray(_winningPlayers);
|
|
}
|
|
return _winningPlayers;
|
|
}
|
|
public static String currentYearObjVar() throws InterruptedException
|
|
{
|
|
return EMPIRE_DAY_RECEIVED_VII;
|
|
}
|
|
public static boolean grantEmpireDayGift(obj_id player, int faction) throws InterruptedException
|
|
{
|
|
if (!isIdValid(player))
|
|
{
|
|
return false;
|
|
}
|
|
if (faction <= 0)
|
|
{
|
|
return false;
|
|
}
|
|
CustomerServiceLog("grantGift", getFirstName(player) + "(" + player + ") is about to receive event gifts");
|
|
String eventGiftOne = IMPERIAL_AND_REBEL_EVENT_GIFT;
|
|
String eventGiftTwo = "";
|
|
if (faction == REBEL_PLAYER)
|
|
{
|
|
CustomerServiceLog("grantGift", getFirstName(player) + "(" + player + ") has been identified as faction: " + faction + " so the player will receive appropriate factional gifts");
|
|
eventGiftTwo = REBEL_REMEMBRANCE_DAY_GIFT;
|
|
}
|
|
else
|
|
{
|
|
CustomerServiceLog("grantGift", getFirstName(player) + "(" + player + ") has been identified as faction: " + faction + " so the player will receive appropriate factional gifts");
|
|
eventGiftTwo = IMPERIAL_EMPIRE_DAY_GIFT;
|
|
}
|
|
obj_id inv = utils.getInventoryContainer(player);
|
|
if (!isValidId(inv) || !exists(inv))
|
|
{
|
|
CustomerServiceLog("grantGift", getFirstName(player) + "(" + player + ") did not have a valid inventory. exiting without giving gifts.");
|
|
return false;
|
|
}
|
|
obj_id giftOne = static_item.createNewItemFunction(eventGiftOne, inv);
|
|
if (!isValidId(giftOne) || !exists(giftOne))
|
|
{
|
|
CustomerServiceLog("grantGift", getFirstName(player) + "(" + player + ") failed to receive gift one: " + eventGiftOne + " this may be due to having a full inventory or the item being corrupted.");
|
|
return false;
|
|
}
|
|
obj_id giftTwo = static_item.createNewItemFunction(eventGiftTwo, inv);
|
|
if (!isValidId(giftTwo) || !exists(giftTwo))
|
|
{
|
|
CustomerServiceLog("grantGift", getFirstName(player) + "(" + player + ") failed to receive gift one: " + eventGiftTwo + " this may be due to having a full inventory or the item being corrupted.");
|
|
return false;
|
|
}
|
|
setObjVar(player, holiday.currentYearObjVar(), 1);
|
|
if (faction == IMPERIAL_PLAYER)
|
|
{
|
|
sendSystemMessage(player, GIFT_GRANTED);
|
|
}
|
|
else
|
|
{
|
|
sendSystemMessage(player, GIFT_GRANTED_REBEL);
|
|
}
|
|
CustomerServiceLog("grantGift", getFirstName(player) + "(" + player + ") has received " + faction + " gifts: " + eventGiftOne + " and " + eventGiftTwo);
|
|
return true;
|
|
}
|
|
public static int getEmoteBeligerence(String emote) throws InterruptedException
|
|
{
|
|
if (emote == null || emote.length() <= 0)
|
|
{
|
|
return 2;
|
|
}
|
|
int emote_row = dataTableSearchColumnForString(emote, 0, EMOTE_DATATABLE);
|
|
if (emote_row <= 0)
|
|
{
|
|
return 2;
|
|
}
|
|
int st_emote_type = dataTableGetInt(EMOTE_DATATABLE, emote_row, 1);
|
|
if (st_emote_type <= 0)
|
|
{
|
|
return 2;
|
|
}
|
|
if (st_emote_type == 2)
|
|
{
|
|
return 2;
|
|
}
|
|
else if (st_emote_type == 1)
|
|
{
|
|
return 1;
|
|
}
|
|
else if (st_emote_type == 0)
|
|
{
|
|
return 0;
|
|
}
|
|
else
|
|
{
|
|
return -1;
|
|
}
|
|
}
|
|
public static obj_id getEmpireDayWaypointObjectObjId(obj_id object, String waypoint, float range) throws InterruptedException
|
|
{
|
|
if (!isIdValid(object) || !exists(object))
|
|
{
|
|
return null;
|
|
}
|
|
if (waypoint == null || waypoint.equals(""))
|
|
{
|
|
return null;
|
|
}
|
|
if (range <= 0)
|
|
{
|
|
return null;
|
|
}
|
|
location loc = getLocation(object);
|
|
if (loc == null)
|
|
{
|
|
return null;
|
|
}
|
|
obj_id[] objects = getObjectsInRange(loc, range);
|
|
for (int i = 0; i < objects.length; i++)
|
|
{
|
|
if (isIdValid(objects[i]))
|
|
{
|
|
if (hasObjVar(objects[i], waypoint))
|
|
{
|
|
obj_id waypointObjId = objects[i];
|
|
return waypointObjId;
|
|
}
|
|
}
|
|
}
|
|
return null;
|
|
}
|
|
public static obj_id masterObjectObjId(obj_id self) throws InterruptedException
|
|
{
|
|
location loc = getLocation(self);
|
|
obj_id[] objects = getObjectsInRange(loc, OBJECT_NEAR_CHECK_RANGE_100M);
|
|
for (int i = 0; i < objects.length; i++)
|
|
{
|
|
if (isIdValid(objects[i]))
|
|
{
|
|
if (hasObjVar(objects[i], "emperorsday.master"))
|
|
{
|
|
obj_id masterObjId = objects[i];
|
|
return masterObjId;
|
|
}
|
|
}
|
|
}
|
|
return null;
|
|
}
|
|
public static boolean giveCeremonyAreaMobsHate(obj_id player, float range) throws InterruptedException
|
|
{
|
|
if (!isIdValid(player) || !exists(player))
|
|
{
|
|
return false;
|
|
}
|
|
if (range <= 0)
|
|
{
|
|
range = 10.0f;
|
|
}
|
|
if (range > 100)
|
|
{
|
|
range = 100.0f;
|
|
}
|
|
location playerLoc = getLocation(player);
|
|
if (playerLoc == null)
|
|
{
|
|
return false;
|
|
}
|
|
obj_id[] allMobsCombat = getAllNpcs(playerLoc, range);
|
|
if (allMobsCombat == null || allMobsCombat.length <= 0)
|
|
{
|
|
return false;
|
|
}
|
|
for (int i = 0; i < allMobsCombat.length; i++)
|
|
{
|
|
if (allMobsCombat[i] == player)
|
|
{
|
|
continue;
|
|
}
|
|
if (isInvulnerable(allMobsCombat[i]))
|
|
{
|
|
continue;
|
|
}
|
|
if (!pvpCanAttack(allMobsCombat[i], player))
|
|
{
|
|
continue;
|
|
}
|
|
startCombat(allMobsCombat[i], player);
|
|
}
|
|
return true;
|
|
}
|
|
public static boolean grantEmperorDayBadge(obj_id player, obj_id celeb, obj_id[] listOfWinners, int faction) throws InterruptedException
|
|
{
|
|
obj_id masterObject = holiday.masterObjectObjId(celeb);
|
|
if (!isIdValid(masterObject) && !exists(masterObject))
|
|
{
|
|
CustomerServiceLog("holidayEvent", "imperial_npc.grantEmperorDayBadge: No Emperor Statue Found! Player: " + player + " cannot receive rewards from Vader!");
|
|
return false;
|
|
}
|
|
if (listOfWinners == null || listOfWinners.length <= 0)
|
|
{
|
|
CustomerServiceLog("holidayEvent", "imperial_npc.grantEmperorDayBadge: The list of winners was not found. Vader cannot give the player his badge.");
|
|
return false;
|
|
}
|
|
boolean foundPlayerObjVar = false;
|
|
for (int i = 0; i < listOfWinners.length; i++)
|
|
{
|
|
obj_id playerOid = getObjIdObjVar(celeb, "readyForBadge.winner_" + (i + 1));
|
|
if (playerOid != player)
|
|
{
|
|
continue;
|
|
}
|
|
CustomerServiceLog("holidayEvent", "imperial_npc.grantEmperorDayBadge: The player: " + player + " OID was found on Vader, removing it and awarding player badge.");
|
|
foundPlayerObjVar = true;
|
|
removeObjVar(celeb, "readyForBadge.winner_" + (i + 1));
|
|
}
|
|
if (!foundPlayerObjVar)
|
|
{
|
|
CustomerServiceLog("holidayEvent", "imperial_npc.grantEmperorDayBadge: The player's objvar was not found. Vader cannot give the player his badge.");
|
|
return false;
|
|
}
|
|
doAnimationAction(celeb, "nod_head_once");
|
|
doAnimationAction(player, "bow2");
|
|
utils.removeScriptVar(player, "emperorsDayBadge");
|
|
if (faction == IMPERIAL_PLAYER)
|
|
{
|
|
if (!badge.grantBadge(player, holiday.EMPIRE_DAY_CHAMPION_BADGE))
|
|
{
|
|
CustomerServiceLog("holidayEvent", "imperial_npc.grantEmperorDayBadge: Could not modify badge slot: " + holiday.EMPIRE_DAY_CHAMPION_BADGE + " for Player: " + player + ". Player cannot receive rewards from Vader!");
|
|
return false;
|
|
}
|
|
factions.addFactionStanding(player, factions.FACTION_IMPERIAL, 250);
|
|
prose_package pp2 = prose.getPackage(DARTH_BADGE_1);
|
|
prose.setTT(pp2, player);
|
|
chat.chat(celeb, player, pp2);
|
|
CustomerServiceLog("holidayEvent", "imperial_npc.grantEmperorDayBadge: Player: " + player + " has received their badge.");
|
|
return true;
|
|
}
|
|
if (!badge.grantBadge(player, holiday.REMEMBRANCE_DAY_CHAMPION_BADGE))
|
|
{
|
|
CustomerServiceLog("holidayEvent", "imperial_npc.grantEmperorDayBadge: Could not modify badge slot: " + holiday.EMPIRE_DAY_CHAMPION_BADGE + " for Player: " + player + ". Player cannot receive rewards from Vader!");
|
|
return false;
|
|
}
|
|
factions.addFactionStanding(player, factions.FACTION_REBEL, 250);
|
|
prose_package pp2 = prose.getPackage(LEIA_BADGE_1);
|
|
prose.setTT(pp2, player);
|
|
chat.chat(celeb, player, pp2);
|
|
doAnimationAction(celeb, "clap_rousing");
|
|
messageTo(masterObject, "hanHappy", null, 2.0f, false);
|
|
return true;
|
|
}
|
|
public static boolean slapPlayerDownForBeingRude(obj_id npcObject, obj_id playerToBeIncapped) throws InterruptedException
|
|
{
|
|
if (!isValidId(npcObject) && !exists(npcObject))
|
|
{
|
|
return false;
|
|
}
|
|
if (!isValidId(playerToBeIncapped) && !exists(playerToBeIncapped))
|
|
{
|
|
return false;
|
|
}
|
|
stealth.testInvisNonCombatAction(playerToBeIncapped, npcObject);
|
|
doAnimationAction(npcObject, "stop");
|
|
dictionary eDict = new dictionary();
|
|
eDict.put("myTarget", playerToBeIncapped);
|
|
messageTo(npcObject, "playerKnockedOut", eDict, 0, false);
|
|
return true;
|
|
}
|
|
public static boolean replaceEventObject(obj_id eventObject, obj_id player, String objectTemplate) throws InterruptedException
|
|
{
|
|
if (!isValidId(eventObject) || !exists(eventObject))
|
|
{
|
|
return false;
|
|
}
|
|
if (!isValidId(player) || !exists(player))
|
|
{
|
|
return false;
|
|
}
|
|
if (objectTemplate == null || objectTemplate.equals(""))
|
|
{
|
|
return false;
|
|
}
|
|
if (!hasObjVar(eventObject, "objParent"))
|
|
{
|
|
CustomerServiceLog("holidayEvent", "holiday.replaceEventObject: object " + eventObject + " doesn't have the object parent objvar so it will be destroyed and the player receives no credit.");
|
|
trial.cleanupObject(eventObject);
|
|
return false;
|
|
}
|
|
obj_id objParent = getObjIdObjVar(eventObject, "objParent");
|
|
if (!isValidId(objParent) || !exists(objParent))
|
|
{
|
|
CustomerServiceLog("holidayEvent", "holiday.replaceEventObject: object " + eventObject + " could not find parent object: " + objParent + " so it will be destroyed and the player receives no credit.");
|
|
trial.cleanupObject(eventObject);
|
|
return false;
|
|
}
|
|
if (!utils.hasScriptVar(eventObject, "deathTracker"))
|
|
{
|
|
CustomerServiceLog("holidayEvent", "holiday.replaceEventObject: object " + eventObject + " did not have the deathTracker scriptvar so it will be destroyed and the player receives no credit.");
|
|
trial.cleanupObject(eventObject);
|
|
return false;
|
|
}
|
|
float respawnTime = 20.f;
|
|
if (hasObjVar(eventObject, "fltRespawnTime"))
|
|
{
|
|
respawnTime = getFloatObjVar(eventObject, "fltRespawnTime");
|
|
}
|
|
location loc = utils.getLocationScriptVar(eventObject, "deathTracker");
|
|
if (loc == null)
|
|
{
|
|
CustomerServiceLog("holidayEvent", "holiday.replaceEventObject: object " + eventObject + " had a corrupt location so it will be destroyed and the player receives no credit.");
|
|
trial.cleanupObject(eventObject);
|
|
return false;
|
|
}
|
|
obj_id replacementEventObject = createObject(objectTemplate, loc);
|
|
if (!isValidId(objParent) || !exists(objParent))
|
|
{
|
|
CustomerServiceLog("holidayEvent", "holiday.replaceEventObject: object " + eventObject + " could not spawn a replacement object. This is likely due to an incorrect replacement template string. The event object will be destroyed and the player receives no credit.");
|
|
trial.cleanupObject(eventObject);
|
|
return false;
|
|
}
|
|
float yaw = getYaw(eventObject);
|
|
CustomerServiceLog("holidayEvent", "holiday.replaceEventObject: object " + eventObject + " did not have the deathTracker scriptvar so it will be destroyed and the plaeyr receives no credit.");
|
|
setObjVar(eventObject, "dontCountDeath", 1);
|
|
setObjVar(replacementEventObject, "objParent", objParent);
|
|
setObjVar(replacementEventObject, "fltRespawnTime", respawnTime);
|
|
utils.setScriptVar(replacementEventObject, "deathTracker", loc);
|
|
setYaw(replacementEventObject, yaw);
|
|
attachScript(replacementEventObject, "systems.spawning.spawned_tracker");
|
|
playClientEffectLoc(player, SMOKE_CLIENT_EFFECT, loc, 0);
|
|
trial.cleanupObject(eventObject);
|
|
return true;
|
|
}
|
|
public static boolean rewardEmpireDayPlayer(obj_id player, int playerFaction, String parentBuffName, String childBuffName, String collectionSlot, String eventName) throws InterruptedException
|
|
{
|
|
CustomerServiceLog("holidayEvent", "holiday.rewardEmpireDayPlayer: Player " + player + " is attempting to increment the childcounter buff: " + childBuffName + ".");
|
|
if (!isValidId(player) || !exists(player))
|
|
{
|
|
return false;
|
|
}
|
|
if (playerFaction < 0 || (playerFaction != IMPERIAL_PLAYER && playerFaction != REBEL_PLAYER))
|
|
{
|
|
return false;
|
|
}
|
|
if (parentBuffName == null || parentBuffName.equals(""))
|
|
{
|
|
return false;
|
|
}
|
|
if (childBuffName == null || childBuffName.equals(""))
|
|
{
|
|
return false;
|
|
}
|
|
if (eventName == null || eventName.equals(""))
|
|
{
|
|
return false;
|
|
}
|
|
if (collectionSlot == null || collectionSlot.equals(""))
|
|
{
|
|
return false;
|
|
}
|
|
if (!hasCompletedCollectionSlotPrereq(player, collectionSlot))
|
|
{
|
|
return false;
|
|
}
|
|
if (!buff.hasBuff(player, parentBuffName))
|
|
{
|
|
CustomerServiceLog("holidayEvent", "holiday.rewardEmpireDayPlayer: Player " + player + " no longer has required parent buff: " + parentBuffName + " so they cannot receive the counter buff: " + childBuffName + ".");
|
|
return false;
|
|
}
|
|
CustomerServiceLog("holidayEvent", "holiday.rewardEmpireDayPlayer: Player " + player + " has passed validation.");
|
|
String eventType = buff.getStringGroupTwo(parentBuffName);
|
|
if (eventType == null || eventType.equals(""))
|
|
{
|
|
CustomerServiceLog("holidayEvent", "holiday.rewardEmpireDayPlayer: Player " + player + " tried to apply childbuff: " + childBuffName + " but it had no group2 data so it failed. exiting without giving player credit.");
|
|
return false;
|
|
}
|
|
if (!buff.hasBuff(player, childBuffName))
|
|
{
|
|
if (!eventType.startsWith(BUFF_COMBATANT_GROUP) && !eventType.startsWith(BUFF_SF_GROUP))
|
|
{
|
|
CustomerServiceLog("holidayEvent", "holiday.rewardEmpireDayPlayer: Player " + player + " tried to apply childbuff: " + childBuffName + " but the group2 is invalid. exiting without giving player credit.");
|
|
return false;
|
|
}
|
|
if (playerFaction == IMPERIAL_PLAYER)
|
|
{
|
|
if (eventType.startsWith(BUFF_COMBATANT_GROUP))
|
|
{
|
|
if (!getEventTokens(player, TOKEN_IMPERIAL_EMPIRE_DAY, TOKEN_AMOUNT_COMBATANT))
|
|
{
|
|
}
|
|
if (factions.isImperial(player) || factions.isRebel(player))
|
|
{
|
|
pvpModifyCurrentGcwPoints(player, GCW_AMOUNT_COMBATANT);
|
|
sendSystemMessage(player, SID_GCW_POINTS);
|
|
}
|
|
}
|
|
else if (eventType.startsWith(BUFF_SF_GROUP))
|
|
{
|
|
if (!factions.isDeclared(player))
|
|
{
|
|
sendSystemMessage(player, SID_NOT_SF);
|
|
return false;
|
|
}
|
|
if (!getEventTokens(player, TOKEN_IMPERIAL_EMPIRE_DAY, TOKEN_AMOUNT_SF))
|
|
{
|
|
}
|
|
pvpModifyCurrentGcwPoints(player, GCW_AMOUNT_SF);
|
|
sendSystemMessage(player, SID_GCW_POINTS);
|
|
}
|
|
buff.applyBuff(player, childBuffName);
|
|
}
|
|
else if (playerFaction == REBEL_PLAYER)
|
|
{
|
|
if (eventType.startsWith(BUFF_COMBATANT_GROUP))
|
|
{
|
|
if (!getEventTokens(player, TOKEN_REBEL_EMPIRE_DAY, TOKEN_AMOUNT_COMBATANT))
|
|
{
|
|
}
|
|
if (factions.isImperial(player) || factions.isRebel(player))
|
|
{
|
|
pvpModifyCurrentGcwPoints(player, GCW_AMOUNT_COMBATANT);
|
|
sendSystemMessage(player, SID_GCW_POINTS);
|
|
}
|
|
}
|
|
else if (eventType.startsWith(BUFF_SF_GROUP))
|
|
{
|
|
if (!factions.isDeclared(player))
|
|
{
|
|
sendSystemMessage(player, SID_NOT_SF);
|
|
return false;
|
|
}
|
|
if (!getEventTokens(player, TOKEN_REBEL_EMPIRE_DAY, TOKEN_AMOUNT_SF))
|
|
{
|
|
}
|
|
pvpModifyCurrentGcwPoints(player, GCW_AMOUNT_SF);
|
|
sendSystemMessage(player, SID_GCW_POINTS);
|
|
}
|
|
buff.applyBuff(player, childBuffName);
|
|
}
|
|
play2dNonLoopingSound(player, groundquests.MUSIC_QUEST_COMPLETED);
|
|
CustomerServiceLog("holidayEvent", "holiday.rewardEmpireDayPlayer: Player " + player + " no longer has required parent buff: " + parentBuffName + " so they cannot receive the counter buff: " + childBuffName + ".");
|
|
}
|
|
else
|
|
{
|
|
if (eventType.startsWith(BUFF_COMBATANT_GROUP))
|
|
{
|
|
String tokenReward = TOKEN_REBEL_EMPIRE_DAY;
|
|
if (playerFaction == IMPERIAL_PLAYER)
|
|
{
|
|
tokenReward = TOKEN_IMPERIAL_EMPIRE_DAY;
|
|
}
|
|
if (!getEventTokens(player, tokenReward, TOKEN_AMOUNT_COMBATANT))
|
|
{
|
|
}
|
|
if (factions.isImperial(player) || factions.isRebel(player))
|
|
{
|
|
pvpModifyCurrentGcwPoints(player, GCW_AMOUNT_COMBATANT);
|
|
sendSystemMessage(player, SID_GCW_POINTS);
|
|
}
|
|
}
|
|
else if (eventType.startsWith(BUFF_SF_GROUP))
|
|
{
|
|
if (!factions.isDeclared(player))
|
|
{
|
|
sendSystemMessage(player, SID_NOT_SF);
|
|
return false;
|
|
}
|
|
String tokenReward = TOKEN_REBEL_EMPIRE_DAY;
|
|
if (playerFaction == IMPERIAL_PLAYER)
|
|
{
|
|
tokenReward = TOKEN_IMPERIAL_EMPIRE_DAY;
|
|
}
|
|
if (!getEventTokens(player, tokenReward, TOKEN_AMOUNT_SF))
|
|
{
|
|
}
|
|
pvpModifyCurrentGcwPoints(player, GCW_AMOUNT_SF);
|
|
sendSystemMessage(player, SID_GCW_POINTS);
|
|
}
|
|
play2dNonLoopingSound(player, groundquests.MUSIC_QUEST_INCREMENT_COUNTER);
|
|
buff.applyBuff(player, childBuffName);
|
|
}
|
|
return true;
|
|
}
|
|
public static boolean setEventLockOutTimeStamp(obj_id player, String eventLockOut) throws InterruptedException
|
|
{
|
|
if (!isValidId(player) || !exists(player))
|
|
{
|
|
return false;
|
|
}
|
|
if (eventLockOut == null || eventLockOut.equals(""))
|
|
{
|
|
return false;
|
|
}
|
|
if (hasObjVar(player, eventLockOut))
|
|
{
|
|
return false;
|
|
}
|
|
int now = getCalendarTime();
|
|
int secondsUntil = getEmpireDayLockoutDelay();
|
|
int then = now + secondsUntil;
|
|
CustomerServiceLog("holidayEvent", "holiday.setEventLockOutTimeStamp: Setting lockout for player: " + player + " to expire on: " + then);
|
|
setObjVar(player, eventLockOut, then);
|
|
return true;
|
|
}
|
|
public static boolean checkEventLockOutRemoval(obj_id player, String eventLockTimer, String eventLockFlag) throws InterruptedException
|
|
{
|
|
if (!isValidId(player) || !exists(player))
|
|
{
|
|
return false;
|
|
}
|
|
if (eventLockTimer == null || eventLockTimer.length() <= 0)
|
|
{
|
|
return false;
|
|
}
|
|
if (eventLockFlag == null || eventLockFlag.length() <= 0)
|
|
{
|
|
return false;
|
|
}
|
|
if (!hasObjVar(player, eventLockTimer) && !hasObjVar(player, eventLockFlag))
|
|
{
|
|
return true;
|
|
}
|
|
if (!hasObjVar(player, eventLockTimer) && hasObjVar(player, eventLockFlag))
|
|
{
|
|
CustomerServiceLog("holidayEvent", "holiday.checkEventLockOutRemoval: Player: " + player + " had lockout flag: " + eventLockFlag + " but not timer: " + eventLockTimer + ". Removing flag.");
|
|
removeObjVar(player, eventLockFlag);
|
|
return true;
|
|
}
|
|
int now = getCalendarTime();
|
|
int then = getIntObjVar(player, eventLockTimer);
|
|
if (then <= 0)
|
|
{
|
|
CustomerServiceLog("holidayEvent", "holiday.checkEventLockOutRemoval: Player: " + player + " had invalid lockout timer: " + eventLockTimer + " for flag: " + eventLockFlag + ". POSSIBLE EXPLOIT. Removing both objvars.");
|
|
removeObjVar(player, eventLockTimer);
|
|
removeObjVar(player, eventLockFlag);
|
|
removeObjVar(player, PLAYER_EMPIRE_DAY_SCORE);
|
|
removeObjVar(player, EMPIRE_DAY_BUFF_TRACKER);
|
|
return true;
|
|
}
|
|
if (now > then)
|
|
{
|
|
CustomerServiceLog("holidayEvent", "holiday.checkEventLockOutRemoval: Player: " + player + " has lockout timer that has expired: " + eventLockTimer + " for flag: " + eventLockFlag + ". Removing both objvars to allow participation in event.");
|
|
removeObjVar(player, eventLockTimer);
|
|
removeObjVar(player, eventLockFlag);
|
|
removeObjVar(player, PLAYER_EMPIRE_DAY_SCORE);
|
|
removeObjVar(player, EMPIRE_DAY_BUFF_TRACKER);
|
|
return true;
|
|
}
|
|
return false;
|
|
}
|
|
public static String getTimeRemainingBeforeLockoutRemoved(obj_id player, String eventLockOut) throws InterruptedException
|
|
{
|
|
if (!isValidId(player) || !exists(player))
|
|
{
|
|
return null;
|
|
}
|
|
if (eventLockOut == null || eventLockOut.equals(""))
|
|
{
|
|
return null;
|
|
}
|
|
if (!hasObjVar(player, eventLockOut))
|
|
{
|
|
return null;
|
|
}
|
|
int now = getCalendarTime();
|
|
int then = getIntObjVar(player, eventLockOut);
|
|
if (then <= 0)
|
|
{
|
|
return null;
|
|
}
|
|
if (now > then)
|
|
{
|
|
return "can start another task now";
|
|
}
|
|
int timeLeft = (then - now);
|
|
return "you have " + utils.formatTimeVerbose(timeLeft) + " left before you are available for that task";
|
|
}
|
|
public static boolean getEventTokens(obj_id player, String tokenStaticItem, int amount) throws InterruptedException
|
|
{
|
|
if (!isValidId(player) || !exists(player))
|
|
{
|
|
return false;
|
|
}
|
|
if (tokenStaticItem == null || tokenStaticItem.equals(""))
|
|
{
|
|
return false;
|
|
}
|
|
if (amount <= 0)
|
|
{
|
|
return false;
|
|
}
|
|
obj_id pInv = utils.getInventoryContainer(player);
|
|
if (!isValidId(pInv) || !exists(pInv))
|
|
{
|
|
return false;
|
|
}
|
|
if (!isValidId(static_item.createNewItemFunction(tokenStaticItem, pInv, amount)))
|
|
{
|
|
return false;
|
|
}
|
|
if (!hasObjVar(player, PLAYER_EMPIRE_DAY_SCORE))
|
|
{
|
|
setObjVar(player, PLAYER_EMPIRE_DAY_SCORE, getIntObjVar(player, PLAYER_EMPIRE_DAY_SCORE) + amount);
|
|
CustomerServiceLog("holidayEvent", "holiday.getEventTokens Player: " + player + " received their very first event points of " + amount + ". Now the player has a score of: " + getIntObjVar(player, PLAYER_EMPIRE_DAY_SCORE));
|
|
}
|
|
else
|
|
{
|
|
setObjVar(player, PLAYER_EMPIRE_DAY_SCORE, getIntObjVar(player, PLAYER_EMPIRE_DAY_SCORE) + amount);
|
|
CustomerServiceLog("holidayEvent", "holiday.getEventTokens Player: " + player + " received " + amount + " points and now has a score of: " + getIntObjVar(player, PLAYER_EMPIRE_DAY_SCORE));
|
|
}
|
|
if (amount == 1)
|
|
{
|
|
sendSystemMessage(player, SID_TOKEN_REWARDED);
|
|
}
|
|
else
|
|
{
|
|
sendSystemMessage(player, SID_TOKENS_REWARDED);
|
|
}
|
|
return true;
|
|
}
|
|
public static int getEmpireDayLockoutDelay() throws InterruptedException
|
|
{
|
|
return secondsUntilNextDailyTime(DAILY_TIME, 0, 0);
|
|
}
|
|
public static boolean createEventLeaderBoardUI(obj_id player, String title, String combinedString) throws InterruptedException
|
|
{
|
|
if (!isValidId(player) || !isValidId(player))
|
|
{
|
|
return false;
|
|
}
|
|
if (title == null || title.length() <= 0)
|
|
{
|
|
return false;
|
|
}
|
|
if (combinedString == null || combinedString.length() <= 0)
|
|
{
|
|
return false;
|
|
}
|
|
dictionary params = new dictionary();
|
|
params.put("player", player);
|
|
closeOldWindow(player);
|
|
int pid = createSUIPage("/Script.messageBox", player, player);
|
|
setSUIAssociatedLocation(pid, player);
|
|
setSUIMaxRangeToObject(pid, 8);
|
|
params.put("callingPid", pid);
|
|
sui.setPid(player, pid, LEADERSUI_PID_NAME);
|
|
setSUIProperty(pid, "Prompt.lblPrompt", "LocalText", combinedString);
|
|
setSUIProperty(pid, "bg.caption.lblTitle", "Text", title);
|
|
setSUIProperty(pid, "Prompt.lblPrompt", "Editable", "false");
|
|
setSUIProperty(pid, "Prompt.lblPrompt", "GetsInput", "true");
|
|
setSUIProperty(pid, "btnCancel", "Visible", "false");
|
|
setSUIProperty(pid, "btnRevert", "Visible", "false");
|
|
setSUIProperty(pid, "btnOk", sui.PROP_TEXT, "Close");
|
|
subscribeToSUIEvent(pid, sui_event_type.SET_onClosedOk, "%button0%", "closeLeaderSui");
|
|
subscribeToSUIEvent(pid, sui_event_type.SET_onClosedCancel, "%button0%", "closeLeaderSui");
|
|
showSUIPage(pid);
|
|
flushSUIPage(pid);
|
|
return true;
|
|
}
|
|
public static void closeOldWindow(obj_id player) throws InterruptedException
|
|
{
|
|
int pid = sui.getPid(player, LEADERSUI_PID_NAME);
|
|
if (pid > -1)
|
|
{
|
|
forceCloseSUIPage(pid);
|
|
sui.removePid(player, LEADERSUI_PID_NAME);
|
|
}
|
|
}
|
|
public static String getEventHighScores(obj_id planet, String scoreObjVar, boolean faction) throws InterruptedException
|
|
{
|
|
if (!isValidId(planet) || !exists(planet))
|
|
{
|
|
return null;
|
|
}
|
|
if (scoreObjVar == null || scoreObjVar.length() <= 0)
|
|
{
|
|
return null;
|
|
}
|
|
String data = "";
|
|
if (!faction)
|
|
{
|
|
for (int i = 1; i <= MAX_NUMBER_OF_PLANET_HIGH_SCORES; i++)
|
|
{
|
|
String name = getStringObjVar(planet, scoreObjVar + ".slot_" + i + holiday.PLANET_VAR_PLAYER_NAME);
|
|
int score = getIntObjVar(planet, scoreObjVar + ".slot_" + i + holiday.PLANET_VAR_PLAYER_SCORE);
|
|
data += "\\^005" + i + ". \\%015" + name + " \\%015" + score + "\n";
|
|
}
|
|
}
|
|
else
|
|
{
|
|
data += sui.colorBlue() + "IMPERIAL\n" + sui.colorWhite();
|
|
for (int i = 1; i <= MAX_NUMBER_OF_PLANET_HIGH_SCORES; i++)
|
|
{
|
|
String name = getStringObjVar(planet, scoreObjVar + ".slot_" + i + holiday.PLANET_VAR_PLAYER_FACTION_IMP + holiday.PLANET_VAR_PLAYER_NAME);
|
|
int score = getIntObjVar(planet, scoreObjVar + ".slot_" + i + holiday.PLANET_VAR_PLAYER_FACTION_IMP + holiday.PLANET_VAR_PLAYER_SCORE);
|
|
data += i + "\t" + name + "\t - " + score + "\n";
|
|
CustomerServiceLog("holidayEventScore", "getEventHighScores: name: " + name + " score: " + score);
|
|
}
|
|
data += sui.colorRed() + "\nREBEL\n" + sui.colorWhite();
|
|
for (int i = 1; i <= MAX_NUMBER_OF_PLANET_HIGH_SCORES; i++)
|
|
{
|
|
String name = getStringObjVar(planet, scoreObjVar + ".slot_" + i + holiday.PLANET_VAR_PLAYER_FACTION_REB + holiday.PLANET_VAR_PLAYER_NAME);
|
|
int score = getIntObjVar(planet, scoreObjVar + ".slot_" + i + holiday.PLANET_VAR_PLAYER_FACTION_REB + holiday.PLANET_VAR_PLAYER_SCORE);
|
|
data += i + "\t" + name + "\t - " + score + "\n";
|
|
}
|
|
}
|
|
return data;
|
|
}
|
|
public static boolean setEmpireDayLeaderScores(obj_id planet, obj_id player, String scoreObjVar, int newScore, String playerName, int faction) throws InterruptedException
|
|
{
|
|
CustomerServiceLog("holidayEventScore", "setEmpireDayLeaderScores: scoreObjVar: " + scoreObjVar + " score: " + newScore);
|
|
if (!isValidId(planet) || !exists(planet))
|
|
{
|
|
return false;
|
|
}
|
|
if (newScore <= 0)
|
|
{
|
|
return false;
|
|
}
|
|
if (scoreObjVar == null || scoreObjVar.length() <= 0)
|
|
{
|
|
return false;
|
|
}
|
|
if (playerName == null || playerName.length() <= 0)
|
|
{
|
|
return false;
|
|
}
|
|
CustomerServiceLog("holidayEventScore", "setEmpireDayLeaderScores: passed validation");
|
|
String postAppendName = "";
|
|
String postAppendScore = "";
|
|
if (faction == holiday.IMPERIAL_PLAYER)
|
|
{
|
|
CustomerServiceLog("holidayEventScore", "setEmpireDayLeaderScores: Is Imp Player");
|
|
postAppendName = holiday.PLANET_VAR_PLAYER_FACTION_IMP + holiday.PLANET_VAR_PLAYER_NAME;
|
|
postAppendScore = holiday.PLANET_VAR_PLAYER_FACTION_IMP + holiday.PLANET_VAR_PLAYER_SCORE;
|
|
}
|
|
else if (faction == holiday.REBEL_PLAYER)
|
|
{
|
|
CustomerServiceLog("holidayEventScore", "setEmpireDayLeaderScores: Is Reb Player");
|
|
postAppendName = holiday.PLANET_VAR_PLAYER_FACTION_REB + holiday.PLANET_VAR_PLAYER_NAME;
|
|
postAppendScore = holiday.PLANET_VAR_PLAYER_FACTION_REB + holiday.PLANET_VAR_PLAYER_SCORE;
|
|
}
|
|
if (postAppendName == null || postAppendName.length() <= 0)
|
|
{
|
|
return false;
|
|
}
|
|
if (postAppendScore == null || postAppendScore.length() <= 0)
|
|
{
|
|
return false;
|
|
}
|
|
if (newScore <= getIntObjVar(planet, scoreObjVar + ".slot_5" + postAppendScore))
|
|
{
|
|
CustomerServiceLog("holidayEventScore", "setEmpireDayLeaderScores: Player doesn't have a high enough score");
|
|
CustomerServiceLog("holidayEventScore", "setEmpireDayLeaderScores: Lowest score: " + getIntObjVar(planet, scoreObjVar + ".slot_5" + postAppendScore));
|
|
return true;
|
|
}
|
|
for (int i = 1; i <= MAX_NUMBER_OF_PLANET_HIGH_SCORES; i++)
|
|
{
|
|
String name = getStringObjVar(planet, scoreObjVar + ".slot_" + i + postAppendName);
|
|
if (name == null || name.length() <= 0)
|
|
{
|
|
continue;
|
|
}
|
|
if (!playerName.equals(name))
|
|
{
|
|
CustomerServiceLog("holidayEventScore", "setEmpireDayLeaderScores: NO match. Name: " + name + " and player name: " + playerName);
|
|
CustomerServiceLog("holidayEventScore", "Name length: " + name.length() + " and player name: " + playerName.length());
|
|
continue;
|
|
}
|
|
CustomerServiceLog("holidayEventScore", "setEmpireDayLeaderScores: found name match");
|
|
int score = getIntObjVar(planet, scoreObjVar + ".slot_" + i + postAppendScore);
|
|
if (newScore == score)
|
|
{
|
|
CustomerServiceLog("holidayEventScore", "setEmpireDayLeaderScores: Player already has a score on leader board.");
|
|
return true;
|
|
}
|
|
}
|
|
int newHsSlot = -1;
|
|
for (int i = MAX_NUMBER_OF_PLANET_HIGH_SCORES - 1; i >= 1; i--)
|
|
{
|
|
int existingScore = 0;
|
|
if (faction == holiday.IMPERIAL_PLAYER)
|
|
{
|
|
existingScore = getIntObjVar(planet, scoreObjVar + ".slot_" + i + holiday.PLANET_VAR_PLAYER_FACTION_IMP + holiday.PLANET_VAR_PLAYER_SCORE);
|
|
}
|
|
else
|
|
{
|
|
existingScore = getIntObjVar(planet, scoreObjVar + ".slot_" + i + holiday.PLANET_VAR_PLAYER_FACTION_REB + holiday.PLANET_VAR_PLAYER_SCORE);
|
|
}
|
|
if (newScore >= existingScore)
|
|
{
|
|
CustomerServiceLog("holidayEventScore", newScore + " is greater than " + existingScore);
|
|
newHsSlot = i;
|
|
}
|
|
else
|
|
{
|
|
break;
|
|
}
|
|
}
|
|
if (newHsSlot < 0)
|
|
{
|
|
return true;
|
|
}
|
|
for (int i = MAX_NUMBER_OF_PLANET_HIGH_SCORES; i >= newHsSlot; i--)
|
|
{
|
|
if (i < MAX_NUMBER_OF_PLANET_HIGH_SCORES && i > 0)
|
|
{
|
|
String moveName = getStringObjVar(planet, scoreObjVar + ".slot_" + i + postAppendName);
|
|
int moveScore = getIntObjVar(planet, scoreObjVar + ".slot_" + i + postAppendScore);
|
|
setObjVar(planet, scoreObjVar + ".slot_" + (i + 1) + postAppendName, moveName);
|
|
setObjVar(planet, scoreObjVar + ".slot_" + (i + 1) + postAppendScore, moveScore);
|
|
}
|
|
}
|
|
setObjVar(planet, scoreObjVar + ".slot_" + newHsSlot + postAppendScore, newScore);
|
|
setObjVar(planet, scoreObjVar + ".slot_" + newHsSlot + postAppendName, playerName);
|
|
return true;
|
|
}
|
|
public static boolean removeAllCompletedQuestsForDeathTroopers(obj_id player) throws InterruptedException
|
|
{
|
|
if (groundquests.isQuestActiveOrComplete(player, "outbreak_live_conversion_neutral"))
|
|
{
|
|
groundquests.clearQuest(player, "outbreak_live_conversion_neutral");
|
|
}
|
|
if (groundquests.isQuestActiveOrComplete(player, "outbreak_switch_to_neutral"))
|
|
{
|
|
groundquests.clearQuest(player, "outbreak_switch_to_neutral");
|
|
}
|
|
if (groundquests.isQuestActiveOrComplete(player, "outbreak_quest_01_neutral"))
|
|
{
|
|
groundquests.clearQuest(player, "outbreak_quest_01_neutral");
|
|
}
|
|
if (groundquests.isQuestActiveOrComplete(player, "outbreak_quest_01_b_neutral"))
|
|
{
|
|
groundquests.clearQuest(player, "outbreak_quest_01_b_neutral");
|
|
}
|
|
if (groundquests.isQuestActiveOrComplete(player, "outbreak_quest_02_neutral"))
|
|
{
|
|
groundquests.clearQuest(player, "outbreak_quest_02_neutral");
|
|
}
|
|
if (groundquests.isQuestActiveOrComplete(player, "outbreak_quest_administrative_building_neutral_01"))
|
|
{
|
|
groundquests.clearQuest(player, "outbreak_quest_administrative_building_neutral_01");
|
|
}
|
|
if (groundquests.isQuestActiveOrComplete(player, "outbreak_quest_administrative_building_neutral_02"))
|
|
{
|
|
groundquests.clearQuest(player, "outbreak_quest_administrative_building_neutral_02");
|
|
}
|
|
if (groundquests.isQuestActiveOrComplete(player, "outbreak_quest_administrative_building_neutral_03"))
|
|
{
|
|
groundquests.clearQuest(player, "outbreak_quest_administrative_building_neutral_03");
|
|
}
|
|
if (groundquests.isQuestActiveOrComplete(player, "outbreak_quest_administrative_building_neutral_04"))
|
|
{
|
|
groundquests.clearQuest(player, "outbreak_quest_administrative_building_neutral_04");
|
|
}
|
|
if (groundquests.isQuestActiveOrComplete(player, "outbreak_quest_administrative_building_neutral_05"))
|
|
{
|
|
groundquests.clearQuest(player, "outbreak_quest_administrative_building_neutral_05");
|
|
}
|
|
if (groundquests.isQuestActiveOrComplete(player, "outbreak_quest_facility_02_neutral"))
|
|
{
|
|
groundquests.clearQuest(player, "outbreak_quest_facility_02_neutral");
|
|
}
|
|
if (groundquests.isQuestActiveOrComplete(player, "outbreak_quest_facility_05_neutral"))
|
|
{
|
|
groundquests.clearQuest(player, "outbreak_quest_facility_05_neutral");
|
|
}
|
|
if (groundquests.isQuestActiveOrComplete(player, "outbreak_quest_final_neutral"))
|
|
{
|
|
groundquests.clearQuest(player, "outbreak_quest_final_neutral");
|
|
}
|
|
if (groundquests.isQuestActiveOrComplete(player, "outbreak_live_conversion_rebel"))
|
|
{
|
|
groundquests.clearQuest(player, "outbreak_live_conversion_rebel");
|
|
}
|
|
if (groundquests.isQuestActiveOrComplete(player, "outbreak_switch_to_rebel"))
|
|
{
|
|
groundquests.clearQuest(player, "outbreak_switch_to_rebel");
|
|
}
|
|
if (groundquests.isQuestActiveOrComplete(player, "outbreak_quest_01_rebel"))
|
|
{
|
|
groundquests.clearQuest(player, "outbreak_quest_01_rebel");
|
|
}
|
|
if (groundquests.isQuestActiveOrComplete(player, "outbreak_quest_01_b_rebel"))
|
|
{
|
|
groundquests.clearQuest(player, "outbreak_quest_01_b_rebel");
|
|
}
|
|
if (groundquests.isQuestActiveOrComplete(player, "outbreak_quest_02_rebel"))
|
|
{
|
|
groundquests.clearQuest(player, "outbreak_quest_02_rebel");
|
|
}
|
|
if (groundquests.isQuestActiveOrComplete(player, "outbreak_quest_administrative_building_rebel_01"))
|
|
{
|
|
groundquests.clearQuest(player, "outbreak_quest_administrative_building_rebel_01");
|
|
}
|
|
if (groundquests.isQuestActiveOrComplete(player, "outbreak_quest_administrative_building_rebel_02"))
|
|
{
|
|
groundquests.clearQuest(player, "outbreak_quest_administrative_building_rebel_02");
|
|
}
|
|
if (groundquests.isQuestActiveOrComplete(player, "outbreak_quest_administrative_building_rebel_03"))
|
|
{
|
|
groundquests.clearQuest(player, "outbreak_quest_administrative_building_rebel_03");
|
|
}
|
|
if (groundquests.isQuestActiveOrComplete(player, "outbreak_quest_administrative_building_rebel_04"))
|
|
{
|
|
groundquests.clearQuest(player, "outbreak_quest_administrative_building_rebel_04");
|
|
}
|
|
if (groundquests.isQuestActiveOrComplete(player, "outbreak_quest_administrative_building_rebel_05"))
|
|
{
|
|
groundquests.clearQuest(player, "outbreak_quest_administrative_building_rebel_05");
|
|
}
|
|
if (groundquests.isQuestActiveOrComplete(player, "outbreak_quest_facility_02_rebel"))
|
|
{
|
|
groundquests.clearQuest(player, "outbreak_quest_facility_02_rebel");
|
|
}
|
|
if (groundquests.isQuestActiveOrComplete(player, "outbreak_quest_facility_05_rebel"))
|
|
{
|
|
groundquests.clearQuest(player, "outbreak_quest_facility_05_rebel");
|
|
}
|
|
if (groundquests.isQuestActiveOrComplete(player, "outbreak_quest_final_rebel"))
|
|
{
|
|
groundquests.clearQuest(player, "outbreak_quest_final_rebel");
|
|
}
|
|
if (groundquests.isQuestActiveOrComplete(player, "outbreak_live_conversion_imperial"))
|
|
{
|
|
groundquests.clearQuest(player, "outbreak_live_conversion_imperial");
|
|
}
|
|
if (groundquests.isQuestActiveOrComplete(player, "outbreak_switch_to_imperial"))
|
|
{
|
|
groundquests.clearQuest(player, "outbreak_switch_to_imperial");
|
|
}
|
|
if (groundquests.isQuestActiveOrComplete(player, "outbreak_quest_01_imperial"))
|
|
{
|
|
groundquests.clearQuest(player, "outbreak_quest_01_imperial");
|
|
}
|
|
if (groundquests.isQuestActiveOrComplete(player, "outbreak_quest_01_b_imperial"))
|
|
{
|
|
groundquests.clearQuest(player, "outbreak_quest_01_b_imperial");
|
|
}
|
|
if (groundquests.isQuestActiveOrComplete(player, "outbreak_quest_02_imperial"))
|
|
{
|
|
groundquests.clearQuest(player, "outbreak_quest_02_imperial");
|
|
}
|
|
if (groundquests.isQuestActiveOrComplete(player, "outbreak_quest_administrative_building_imperial_01"))
|
|
{
|
|
groundquests.clearQuest(player, "outbreak_quest_administrative_building_imperial_01");
|
|
}
|
|
if (groundquests.isQuestActiveOrComplete(player, "outbreak_quest_administrative_building_imperial_02"))
|
|
{
|
|
groundquests.clearQuest(player, "outbreak_quest_administrative_building_imperial_02");
|
|
}
|
|
if (groundquests.isQuestActiveOrComplete(player, "outbreak_quest_administrative_building_imperial_03"))
|
|
{
|
|
groundquests.clearQuest(player, "outbreak_quest_administrative_building_imperial_03");
|
|
}
|
|
if (groundquests.isQuestActiveOrComplete(player, "outbreak_quest_administrative_building_imperial_04"))
|
|
{
|
|
groundquests.clearQuest(player, "outbreak_quest_administrative_building_imperial_04");
|
|
}
|
|
if (groundquests.isQuestActiveOrComplete(player, "outbreak_quest_administrative_building_imperial_05"))
|
|
{
|
|
groundquests.clearQuest(player, "outbreak_quest_administrative_building_imperial_05");
|
|
}
|
|
if (groundquests.isQuestActiveOrComplete(player, "outbreak_quest_facility_02_imperial"))
|
|
{
|
|
groundquests.clearQuest(player, "outbreak_quest_facility_02_imperial");
|
|
}
|
|
if (groundquests.isQuestActiveOrComplete(player, "outbreak_quest_facility_05_imperial"))
|
|
{
|
|
groundquests.clearQuest(player, "outbreak_quest_facility_05_imperial");
|
|
}
|
|
if (groundquests.isQuestActiveOrComplete(player, "outbreak_quest_final_imperial"))
|
|
{
|
|
groundquests.clearQuest(player, "outbreak_quest_final_imperial");
|
|
}
|
|
if (groundquests.isQuestActiveOrComplete(player, "outbreak_quest_rescue_01"))
|
|
{
|
|
groundquests.clearQuest(player, "outbreak_quest_rescue_01");
|
|
}
|
|
if (groundquests.isQuestActiveOrComplete(player, "outbreak_quest_rescue_01b"))
|
|
{
|
|
groundquests.clearQuest(player, "outbreak_quest_rescue_01b");
|
|
}
|
|
if (groundquests.isQuestActiveOrComplete(player, "outbreak_quest_rescue_01c"))
|
|
{
|
|
groundquests.clearQuest(player, "outbreak_quest_rescue_01c");
|
|
}
|
|
if (groundquests.isQuestActiveOrComplete(player, "outbreak_quest_rescue_01d"))
|
|
{
|
|
groundquests.clearQuest(player, "outbreak_quest_rescue_01d");
|
|
}
|
|
if (groundquests.isQuestActiveOrComplete(player, "outbreak_quest_rescue_02"))
|
|
{
|
|
groundquests.clearQuest(player, "outbreak_quest_rescue_02");
|
|
}
|
|
if (groundquests.isQuestActiveOrComplete(player, "outbreak_quest_rescue_03"))
|
|
{
|
|
groundquests.clearQuest(player, "outbreak_quest_rescue_03");
|
|
}
|
|
if (groundquests.isQuestActiveOrComplete(player, "outbreak_quest_rescue_04"))
|
|
{
|
|
groundquests.clearQuest(player, "outbreak_quest_rescue_04");
|
|
}
|
|
if (groundquests.isQuestActiveOrComplete(player, "outbreak_quest_rescue_05"))
|
|
{
|
|
groundquests.clearQuest(player, "outbreak_quest_rescue_05");
|
|
}
|
|
if (groundquests.isQuestActiveOrComplete(player, "outbreak_quest_rescue_06"))
|
|
{
|
|
groundquests.clearQuest(player, "outbreak_quest_rescue_06");
|
|
}
|
|
if (groundquests.isQuestActiveOrComplete(player, "outbreak_quest_rescue_07"))
|
|
{
|
|
groundquests.clearQuest(player, "outbreak_quest_rescue_07");
|
|
}
|
|
if (groundquests.isQuestActiveOrComplete(player, "outbreak_quest_rescue_08"))
|
|
{
|
|
groundquests.clearQuest(player, "outbreak_quest_rescue_08");
|
|
}
|
|
if (groundquests.isQuestActiveOrComplete(player, "outbreak_quest_rescue_09"))
|
|
{
|
|
groundquests.clearQuest(player, "outbreak_quest_rescue_09");
|
|
}
|
|
if (groundquests.isQuestActiveOrComplete(player, "outbreak_quest_rescue_010"))
|
|
{
|
|
groundquests.clearQuest(player, "outbreak_quest_rescue_010");
|
|
}
|
|
if (groundquests.isQuestActiveOrComplete(player, "outbreak_quest_rescue_011"))
|
|
{
|
|
groundquests.clearQuest(player, "outbreak_quest_rescue_011");
|
|
}
|
|
if (groundquests.isQuestActiveOrComplete(player, "outbreak_quest_rescue_012"))
|
|
{
|
|
groundquests.clearQuest(player, "outbreak_quest_rescue_012");
|
|
}
|
|
if (groundquests.isQuestActiveOrComplete(player, "outbreak_quest_rescue_013"))
|
|
{
|
|
groundquests.clearQuest(player, "outbreak_quest_rescue_013");
|
|
}
|
|
if (groundquests.isQuestActiveOrComplete(player, "outbreak_quest_rescue_014"))
|
|
{
|
|
groundquests.clearQuest(player, "outbreak_quest_rescue_014");
|
|
}
|
|
if (groundquests.isQuestActiveOrComplete(player, "outbreak_quest_rescue_015"))
|
|
{
|
|
groundquests.clearQuest(player, "outbreak_quest_rescue_015");
|
|
}
|
|
if (groundquests.isQuestActiveOrComplete(player, "outbreak_quest_rescue_016"))
|
|
{
|
|
groundquests.clearQuest(player, "outbreak_quest_rescue_016");
|
|
}
|
|
if (groundquests.isQuestActiveOrComplete(player, "outbreak_quest_shuttle_parts"))
|
|
{
|
|
groundquests.clearQuest(player, "outbreak_quest_shuttle_parts");
|
|
}
|
|
if (groundquests.isQuestActiveOrComplete(player, "outbreak_quest_facility_01"))
|
|
{
|
|
groundquests.clearQuest(player, "outbreak_quest_facility_01");
|
|
}
|
|
if (groundquests.isQuestActiveOrComplete(player, "outbreak_quest_facility_02"))
|
|
{
|
|
groundquests.clearQuest(player, "outbreak_quest_facility_02");
|
|
}
|
|
if (groundquests.isQuestActiveOrComplete(player, "outbreak_quest_facility_03"))
|
|
{
|
|
groundquests.clearQuest(player, "outbreak_quest_facility_03");
|
|
}
|
|
if (groundquests.isQuestActiveOrComplete(player, "outbreak_quest_facility_04"))
|
|
{
|
|
groundquests.clearQuest(player, "outbreak_quest_facility_04");
|
|
}
|
|
return true;
|
|
}
|
|
}
|