/***** INCLUDES ********************************************************/ include library.armor; include library.skill; include library.utils; include library.create; include library.respec; include library.static_item; include library.skill_template; include java.util.HashSet; include java.util.StringTokenizer; include java.util.Vector; include java.util.Arrays; include library.qa; include library.sui; include library.utils; include library.pclib; include library.weapons; include library.skill; include library.gm; include library.respec; include library.buff; include library.performance; include library.space_transition; include library.space_utils; include library.space_create; include library.ship_ai; trigger OnSpeaking(string text) { debugConsoleMsg(self, text); java.util.StringTokenizer tok = new java.util.StringTokenizer (text); //pInv = players inventory obj_id pInv = utils.getInventoryContainer(self); if (text == "space-generateSpaceParts") { //Armor1 obj_id itemArmor = createObject("object/tangible/ship/components/armor/arm_corellian_reinforced_light_durasteel.iff", pInv, ""); setObjVar (itemArmor, "ship_comp.hitpoints_current", 5000.000f); setObjVar (itemArmor, "ship_comp.hitpoints_maximum", 5000.000f); setObjVar (itemArmor, "ship_comp.mass", 5000.000f); //Armor2 obj_id itemArmor2 = createObject("object/tangible/ship/components/armor/arm_corellian_reinforced_light_durasteel.iff", pInv, ""); setObjVar (itemArmor2, "ship_comp.hitpoints_current", 5000.000f); setObjVar (itemArmor2, "ship_comp.hitpoints_maximum", 5000.000f); setObjVar (itemArmor2, "ship_comp.mass", 5000.000f); //Engine obj_id itemEngine = createObject("object/tangible/ship/components/engine/eng_cygnus_hdx.iff", pInv, ""); setObjVar (itemEngine, "ship_comp.mass", 100.000f); setObjVar (itemEngine, "ship_comp.engine.pitch_rate_maximum", 150.000f); setObjVar (itemEngine, "ship_comp.engine.yaw_rate_maximum", 150.000f); setObjVar (itemEngine, "ship_comp.engine.roll_rate_maximum", 150.000f); setObjVar (itemEngine, "ship_comp.engine.speed_maximum", 250.000f); //shield obj_id itemShield = createObject("object/tangible/ship/components/shield_generator/shd_koensayr_deflector_m3.iff", pInv, ""); setObjVar (itemShield, "ship_comp.mass", 100.000f); setObjVar (itemShield, "ship_comp.shield.hitpoints_back_current", 5000.000f); setObjVar (itemShield, "ship_comp.shield.hitpoints_back_maximum", 5000.000f); setObjVar (itemShield, "ship_comp.shield.hitpoints_front_current", 5000.000f); setObjVar (itemShield, "ship_comp.shield.hitpoints_front_maximum", 5000.000f); setObjVar (itemShield, "ship_comp.shield.recharge_rate", 500.000f); //Booster obj_id itemBooster = createObject("object/tangible/ship/components/booster/bst_corellian_experimental_tjh3.iff", pInv, ""); setObjVar (itemBooster, "ship_comp.booster.acceleration", 80.000f); setObjVar (itemBooster, "ship_comp.booster.energy_consumption_rate", 150.000f); setObjVar (itemBooster, "ship_comp.booster.energy_current", 3000.000f); setObjVar (itemBooster, "ship_comp.booster.energy_maximum", 3000.000f); setObjVar (itemBooster, "ship_comp.booster.energy_recharge_rate", 500.00f); setObjVar (itemBooster, "ship_comp.booster.speed_maximum", 400.000f); setObjVar (itemBooster, "ship_comp.mass", 100.000f); //Reactor obj_id itemRactor = createObject("object/tangible/ship/components/reactor/rct_freitek_improved_powerhouse_mk1.iff", pInv, ""); setObjVar (itemRactor, "ship_comp.mass", 100.000f); setObjVar (itemRactor, "ship_comp.reactor.energy_generation_rate", 80000.000f); //Cap obj_id itemCap = createObject("object/tangible/ship/components/weapon_capacitor/cap_corellian_cruiser_grade_cap9.iff", pInv, ""); setObjVar (itemCap, "ship_comp.mass", 100.000f); setObjVar (itemCap, "ship_comp.capacitor.energy_current", 5000.000f); setObjVar (itemCap, "ship_comp.capacitor.energy_maximum", 5000.000f); setObjVar (itemCap, "ship_comp.capacitor.energy_recharge_rate", 250.000f); //Weapon obj_id itemWeapon = createObject("object/tangible/ship/components/weapon/wpn_mission_reward_rebel_incom_tricannon.iff", pInv, ""); setObjVar (itemWeapon, "ship_comp.mass", 100.000f); setObjVar (itemWeapon, "ship_comp.weapon.damage_maximum", 5000.000f); setObjVar (itemWeapon, "ship_comp.weapon.damage_minimum", 3000.000f); setObjVar (itemWeapon, "ship_comp.weapon.effectiveness_armor", 0.950f); setObjVar (itemWeapon, "ship_comp.weapon.effectiveness_shields", 0.950f); setObjVar (itemWeapon, "ship_comp.weapon.energy_per_shot", 15.000f); setObjVar (itemWeapon, "ship_comp.weapon.refire_rate", 0.3900f); } if(text == "makeZoneToChips") { obj_id moduleImpDS = createObject("object/tangible/droid/droid_space_memory_module_1.iff", pInv, ""); setObjVar(moduleImpDS, "programSize", 1); setObjVar(moduleImpDS, "strDroidCommand", "droidcommand_zonetoimperialdeepspace"); setName(moduleImpDS, ""); //setName(moduleKessel, "Imperial Travel Algoritm"); setName(moduleImpDS, new string_id("space/droid_commands", "droidcommand_zonetoimperialdeepspace_chipname")); obj_id moduleRebDS = createObject("object/tangible/droid/droid_space_memory_module_1.iff", pInv, ""); setObjVar(moduleRebDS, "programSize", 1); setObjVar(moduleRebDS, "strDroidCommand", "droidcommand_zonetorebeldeepspace"); setName(moduleRebDS, ""); //setName(moduleKessel, "Imperial Travel Algoritm"); setName(moduleRebDS, new string_id("space/droid_commands", "droidcommand_zonetorebeldeepspace_chipname")); obj_id moduleKessel = createObject("object/tangible/droid/droid_space_memory_module_1.iff", pInv, ""); setObjVar(moduleKessel, "programSize", 1); setObjVar(moduleKessel, "strDroidCommand", "droidcommand_zonetokessel"); setName(moduleKessel, ""); //setName(moduleKessel, "Imperial Travel Algoritm"); setName(moduleKessel, new string_id("space/droid_commands", "droidcommand_zonetokessel_chipname")); } if(text == "spawnShip") { // Method to spawn object in front of player transform gloc = getTransform_o2w(space_transition.getContainingShip(self)); // Move the starting spot out in front of us. float dist = rand(50.f, 100.f); vector n = gloc.getLocalFrameK_p().normalize().multiply( dist ); // Project a point out in front of us. gloc = gloc.move_p( n ); string targetShipType = "experimental_ship"; obj_id targetShip = space_create.createShipHyperspace(targetShipType, gloc); sendSystemMessage(self, "Spawned ship - OID: "+targetShip, null); } if(text == "spawnShip2") { // Method to spawn object in front of player transform gloc = getTransform_o2w(space_transition.getContainingShip(self)); // Move the starting spot out in front of us. float dist = rand(50.f, 100.f); vector n = gloc.getLocalFrameK_p().normalize().multiply( dist ); // Project a point out in front of us. gloc = gloc.move_p( n ); string targetShipType = "reb_gunboat_kessel_tier5"; obj_id targetShip = space_create.createShipHyperspace(targetShipType, gloc); sendSystemMessage(self, "Spawned ship - OID: "+targetShip, null); } if(text == "cleanupPiracyEvent") { obj_id beacon = utils.getObjIdScriptVar(self, "beacon"); messageTo(beacon, "cleanupPiracyEvent", null, 3.f, false); } if(text == "rebelHelper") { obj_id ship = space_transition.getContainingShip(self); setObjVar(ship, "spaceFaction.FactionOverride", ##"rebel"); space_utils.notifyObject(ship, "checkSpacePVPStatus", null); sendSystemMessage(self, "Starting rebel fac helper", null); } if(text == "imperialHelper") { obj_id ship = space_transition.getContainingShip(self); setObjVar(ship, "spaceFaction.FactionOverride", ##"imperial"); space_utils.notifyObject(ship, "checkSpacePVPStatus", null); sendSystemMessage(self, "Starting imperial fac helper", null); } if(text == "cleanHyper") { obj_id ship = space_transition.getContainingShip(self); utils.removeScriptVar(self,"space.zoneDestination"); sendSystemMessage(self, "clean scriptVars", null); } if(text == "scriptVarCleanup") { obj_id ship = space_transition.getContainingShip(self); utils.removeScriptVar(ship, "space.goOvertTimer"); utils.removeScriptVar(ship, "space.goOvert"); utils.removeScriptVar(ship, "space.goOvertLoc"); } if(text == "stopBlink") { obj_id ship = space_transition.getContainingShip(self); pvpPrepareToBeNeutral(ship); } if(text == "startBlink") { obj_id ship = space_transition.getContainingShip(self); pvpPrepareToBeDeclared(ship); } if(text == "spawnExpShip") { int numships = 4; obj_id[] escortIdArray = new obj_id[4]; for (int i=0; i