XRWS         !  >X  "  8…  ±ext_01.cat ext_01.dat readme.txt aiscripts/player.BaelyJump.xml 10346 1441776918 b872a370671df532399eb9ff2bbdfdeb
md/BaelyJump.xml 1670 1441776935 c320fbdc336d45ed25817624a7b92cb0
ui.xml 348 1441769349 a6eb7dd21f35cb4ed8731acb436d00c8
ui/bae_mainmenu/mainmenu_BaelyJump.lua 2105 1441775790 a15d4429f19336743f5cef9d286211d4
<?xml version="1.0" encoding="utf-8" ?>
<aiscript name="player.BaelyJump" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="aiscripts.xsd" version="1">
  <params>
    <param name="destination" />
  </params>
  <attention min="unknown">
    <actions>

      <label name="initialization"/>
      
      <set_value name="$zone" exact="$destination" />
      <set_value name="$lastzone" exact="player.zone" />
      <set_value name="$jumpStarted" exact="player.age" />
      <set_value name="$kap" exact="'Jumping to: ' + $zone.name"/>
      <set_value name="$Msgdelay" exact="6s"/>
      <set_value name="player.entity.$skunkjumpactive" exact="1" />
      <set_value name="player.entity.$jumpReady" exact="0" />
      <set_value name="$returnto" exact="1" />
      <set_value name="$it" exact="1" />
      <set_value name="$details" exact="[]" />
      <set_value name="$aborted" exact="false" />
      <set_value name="$doingList" exact="[ 'Activating', 'Locating', 'Rolling', 'Subjugating', 'Retrofitting', 'Parametrizing', 'Vandalizing', 'Painting', 'Validating', 'Turning Down', 'Jolting', 'Stress Testing', 'Egosofting', 'Verifying', 'Caressing', 'Stabilizing', 'Poking', 'Licking', 'Stimulating', 'Counting', 'Checking', 'Triggering', 'Greeting', 'Normalizing', 'Starting', 'Firing up', 'Initialising', 'Booting up', 'Pestering', 'Tickling', 'Ignoring', 'Gene Splicing', 'Teasing', 'Synchronising' ]" />
      <set_value name="$thingsList" exact="[ 'JUMP DRIVE', 'WIND SHIELD WIPERS', 'GLUTS', 'COFFEE MACHINES', 'FOR WHAT?', 'CARBURATORS', 'AREOLAS', 'SHIELDS', 'SPACEFLIES', 'CREW MEMBERS', 'WARP TUNNEL', 'NOOBS', 'LIGHT CYCLES', 'SEAT CUSHIONS', 'SHIP COMPONENTS', 'HACKER CHIPS', 'NUKES', 'YISHAS\'S HAIR', 'PEG LEGS', 'G MEN', 'ROCKMEN', 'HULL INTEGRITY', 'BOOB LASERS', 'ORGASMIC REACTOR', 'JOINTS', 'FUSION REACTOR', 'PANDORAS', 'ROOSTERS', 'OINK OINKS', 'ALPACAS', 'BOOMBOX', 'THE FORCE', 'REALITY MARBLES' ]" />
      
      <remove_effect object="player.primaryship" effect="'scfx_wave_01'" />

      <label name="notification"/>
      
      <set_value name="$rand" min="1" max="$doingList.count" />
      <set_value name="$doing" exact="$doingList.{$rand}" />
      <remove_value name="$doingList.{$rand}" />
      <set_value name="$rand" min="1" max="$thingsList.count" />
      <set_value name="$things" exact="$thingsList.{$rand}" />
      <remove_value name="$thingsList.{$rand}" />
      
      <do_if value="player.entity.$skunkjumpactive == 0">
        <set_value name="$aborted" exact="true" />
        <resume label="finish" />
      </do_if>
        
      <do_if value="$details.count ge 5">
        <remove_value name="$details.{1}" />
      </do_if>

      <append_to_list name="$details" exact="[ null, [ $doing , 0, 120, 255 ], null, null, null, null ]" />
      <show_notification caption="$kap" details="$details" queued="false" timeout="$Msgdelay" />
      
      <do_if value="$returnto == 1" >
        <play_sound object="player.entity" sound="'anim_jumpdrive_l_activation'" />
      </do_if>
      
       
      
      <label name="thinking"/>
      <wait exact="500ms" />
      
      <do_if value="$it == 1" >
        <set_value name="$details.{$details.count}.{3}" exact="[ $things, 255, 255, 255 ]" />
      </do_if>
      <do_elseif value="$it == 2">
        <set_value name="$details.{$details.count}.{3}" exact="[ $things + '.', 255, 255, 255 ]" />
      </do_elseif>
      <do_elseif value="$it == 3">
        <set_value name="$details.{$details.count}.{3}" exact="[ $things + '..', 255, 255, 255 ]" />
      </do_elseif>
      <do_elseif value="$it == 4">
        <set_value name="$details.{$details.count}.{3}" exact="[ $things + '...', 255, 255, 255 ]" />
      </do_elseif>
      <do_elseif value="$it == 5">
        <set_value name="$details.{$details.count}.{6}" exact="[ 'Done', 0, 255, 0 ]" />
      </do_elseif>
      
      <show_notification caption="$kap" details="$details" queued="false" timeout="$Msgdelay" />
      
      <do_if value="$it lt 5">
        <set_value name="$it" operation="add" />
        <resume label="thinking" />
      </do_if>
      <set_value name="$it" exact="1" />
      
      <do_if value="$returnto lt 6">
        <set_value name="$returnto" operation="add" />
        <resume label="notification" />
      </do_if>
      
      
      <wait exact="500ms" />
      
      <remove_value name="$details.{1}" />
      <append_to_list name="$details" exact="[ null, [ 'Systems Check Complete', 0, 120, 255 ], null, null, null, null ]" />
      <show_notification caption="$kap" details="$details" queued="false" timeout="$Msgdelay" />
      <wait exact="1s" />
      <set_value name="$details.{$details.count}.{3}" exact="[ 'FINAL COUNTDOWN', 255,255,255 ]" />
      <show_notification caption="$kap" details="$details" queued="false" timeout="$Msgdelay" />
      <wait exact="500ms" />
      
      <remove_value name="$details.{1}" />
      
      <set_value name="$s" exact="5" />
      
      <set_value name="$details.{$details.count}.{6}" exact="[ 'GO! ', 0, 255, 0 ]" />
      <append_to_list name="$details" exact="[null, null, [ $s, 255, 230, 30 ], null, null, null]"/>
      <show_notification caption="$kap" details="$details" queued="false" timeout="$Msgdelay" />
      <wait exact="750ms" />
      <set_value name="$details.{$details.count}.{3}" exact="null" />
      <show_notification caption="$kap" details="$details" queued="false" timeout="$Msgdelay" />
      <set_value name="$s" operation="subtract" />

      <label name="countdown"/>
      <wait exact="250ms" />
      
      <do_if value="$details.count ge 3">
        <remove_value name="$details.{1}" />
      </do_if>
      
      <do_if value="player.entity.$skunkjumpactive == 0">
        <set_value name="$aborted" exact="true" />
        <resume label="finish" />
      </do_if>
      
      <do_if value="$s gt 2">
        <append_to_list name="$details" exact="[null, null, [ $s, 255, 230, 30 ], null, null, null]"/>
      </do_if>
      <do_else>
        <set_value name="$details.{$details.count}.{3}" exact="[ $s, 255, 230, 30 ]" />
      </do_else>
      
      <show_notification caption="$kap" details="$details" queued="false" timeout="$Msgdelay" />
      
      <wait exact="750ms" />
      <set_value name="$details.{$details.count}.{3}" exact="null" />
      <show_notification caption="$kap" details="$details" queued="false" timeout="$Msgdelay" />
      
      <do_if value="$s != 1">
        <set_value name="$s" operation="subtract" />
        <resume label="countdown" />
      </do_if>
      
      <wait exact="250ms" />
      <set_value name="$details.{$details.count}" exact="[ null, null, [ 'JUMPING', 0, 255, 0 ], null, null, null ]" />
      <show_notification caption="$kap" details="$details" queued="false" timeout="$Msgdelay" />
      <wait exact="1s" />
      <label name="jump"/>
      
      <add_effect object="player.primaryship" effect="'scfx_wave_01'" />
      <play_sound object="player.entity" sound="'gate_flythrough'" />
      <wait exact="250ms" />
      <warp object="player.primaryship" zone="$zone">
        <safepos object="$zone" radius="player.primaryship.size" max="player.primaryship.size * 5" />
      </warp>
      <wait exact="500ms" />
      
      <set_value name="player.entity.$skunkjumpactive" exact="0" />
      
      <label name="finish"/>
      <wait exact="500ms" />
      
      <do_if value="player.zone != $lastzone">
        <set_value name="$details.{1}" exact="[null, null, null, null, null, null]" />
        <set_value name="$details.{$details.count}" exact="[ null, [ 'Destination Reached:', 0, 120, 255 ], [ player.zone.name, 255, 255, 255 ], null, null, null ]" />
        <show_notification caption="'Jump Completed'" details="$details" queued="false" timeout="$Msgdelay" />
        <wait exact="6s" />
      </do_if>
      <do_elseif value="$aborted">
        
        <do_if value="$details.count gt 4">
          <remove_value name="$details.{1}" />
        </do_if>
        <append_to_list name="$details" exact="[ null, [ 'Aborting', 255, 30, 50 ], [ 'JUMP SEQUENCE', 200, 0, 150 ], null, null, null ]" />
        <set_value name="$timeLeft" exact="22s - (player.age - $jumpStarted)" />
        <do_if value="$timeLeft lt 0s">
          <set_value name="$timeLeft" exact="0s" />
        </do_if>
        <show_notification caption="'Aborting Jump'" details="$details" queued="false" timeout="$timeLeft + 4s" />
        <wait exact="1s" />
        
        <do_if value="$details.count gt 4">
          <remove_value name="$details.{1}" />
        </do_if>
        <append_to_list name="$details" exact="[ null, [ 'Spooling', 255, 30, 50 ], [ 'ENERGY COIL', 200, 0, 150 ], null, null, null ]" />
        <show_notification caption="'Aborting Jump'" details="$details" queued="false" timeout="$timeLeft + 4s" />
        <wait exact="$timeLeft" />
        
        <do_if value="$details.count gt 4">
          <remove_value name="$details.{1}" />
        </do_if>
        <append_to_list name="$details" exact="[ null, [ 'Normalizing', 255, 30, 50 ], [ 'ENERGY LEVELS', 200, 0, 150 ], null, null, null ]" />
        <show_notification caption="'Aborting Jump'" details="$details" queued="false" timeout="4s" />
        <play_sound object="player.entity" sound="'anim_jumpdrive_l_deactivation'" />
        <wait exact="4s" />
        
      </do_elseif>
      <do_else>
        <set_value name="$details.{$details.count}" exact="[ null, [ 'Torturing', 255, 30, 50 ], [ 'HOBOS', 200, 0, 150 ], null, null, null ]" />
        <show_notification caption="'Aborting Jump'" details="$details" queued="false" timeout="$timeLeft" />
      </do_else>
      
      <remove_effect object="player.primaryship" effect="'scfx_wave_01'" />
      <set_value name="player.entity.$jumpReady" exact="1" />
      
    </actions>
  </attention>
  <on_abort>
    <set_value name="player.entity.$skunkjumpactive" exact="0" />
    <set_value name="player.entity.$jumpReady" exact="1" />
    <remove_effect object="player.primaryship" effect="'scfx_wave_01'" />
  </on_abort>
</aiscript>
<?xml version="1.0" encoding="utf-8" ?>
<mdscript name="BaelyJump" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="md.xsd">
  <cues>
    <cue name="SectionHandler_BaelyJump" instantiate="false" namespace="this">
      <conditions>
        <check_any>
          <event_conversation_next_section sectionprefix="BaelyJump" />
          <event_conversation_returned_to_section sectionprefix="BaelyJump" />
        </check_any>
      </conditions>
      <actions>
        <do_if value="event.param == 'BaelyJump_Abort'">
          <set_value name="player.entity.$skunkjumpactive" exact="0" />
        </do_if>
        
        <do_elseif value="event.param == 'BaelyJump_To'">
          <open_conversation_menu menu="MapMenu" param="event.param2" param2="event.param3" />
          <add_conversation_view view="closeupdetailmonitor" />
        </do_elseif>
        
        <do_elseif value="event.param == 'BaelyJump_Do'">
          <add_conversation_view view="facenormal" />
          <set_value name="$zone" exact="event.param2.{3}" />
          
          <do_if value="$zone != null and $zone != player.zone">
            <start_script name="'player.BaelyJump'" object="player.entity">
              <param name="destination" value="$zone" />
            </start_script>
          </do_if>
          <do_else>
            <show_notification caption="'Jump Aborted'" details="'Same zone selected'" queued="True" timeout="2s" sound="notification_warning"/>
          </do_else>
        </do_elseif>
        
        <reset_cue cue="this" />
      </actions>
    </cue>
    
  </cues>
</mdscript><?xml version="1.0" encoding="utf-8"?>
<addon name="Baely Jump" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="C:\Temp\Rebirth\ui\core\addon.xsd">
  <environment type="fullscreen">
    <file name="ui/bae_mainmenu/mainmenu_BaelyJump.lua" />
    <dependency name="ego_mainmenu" />
  </environment>
</addon>local menuAddon = {}
local function createSetupBaelyJump(menu)
    local playership = GetPlayerPrimaryShipID()
    local player = GetComponentData(playership, "controlentity")
    local playerroom = GetPlayerRoom()
    local incockpit = IsComponentClass(playerroom, "cockpit")
    local playersector = GetComponentData(playership, "sectorid")
    local isjumping = GetNPCBlackboard(player, "$skunkjumpactive")
    local canJump = GetNPCBlackboard(player, "$jumpReady")

    if (canJump == nil) then
        canJump = 1
    end
    
    -- Insert Jump section entries into menu
    for _, subMenu in ipairs(menu.setup.top) do
        if subMenu.icon == "mm_ic_navig" then
            if (incockpit) then
                if (isjumping == 1) then
                    table.insert(subMenu.list, {
                        icon = "mm_ic_navig",
                        name = "Abort Jump",
                        section = "BaelyJump_Abort",
                        sectionparam = { 0, 0 },
                        info = "Cancel current Jump sequence"
                    })
                else
                    table.insert(subMenu.list, {
                        icon = "mm_ic_navig",
                        name = "Jump!",
                        section = "BaelyJump_To",
                        sectionparam = { 0, 0, 'sector', playersector, nil, nil, 'selectzone', {'BaelyJump_Do'} },
                        condition = (canJump == 1),
                        info = "Initiate Jump sequence"
                    })
                end
            end
        end
    end
end

local function createSetupWrapper()
    menuAddon.origCreateSetup()
    createSetupBaelyJump(menuAddon.menu)
end

local function init()
    if Menus then
        for _, menu in ipairs(Menus) do
            if menu.name == "MainMenu" then
                menuAddon.menu = menu
                menuAddon.origCreateSetup = menu.createSetup
                menu.createSetup = createSetupWrapper
                break
            end
        end
    end
end

init()
Baely Jump v1.0
==================
You'd think there be more X-Rebirth mods to choose from after 2 years since its release.
Originally, this was attached to my Baely Mod but with so many other Jump mods out there, I decided to detach it.
I drew inspiration from J3ANP3T3R's jump function from Betty AI and Angel618's 100% Jump Drive to create yet another flavor of the jump drive. 
Greatly simplified its usage. Just ENTER-4-5 to open map and select any discovered zone to jump to. 
Reduced and/or removed most of the restrictions and penalties and annoying lights/sounds. Only has a ~20s chargeup time.

What is it?
-----------
This mod adds a sub-menus under Main > Map (ENTER-4)
5."Jump!" most of the code for this was already in vanilla XR I just added my own flavor to it

Feedback is welcomed.

Developed while using X Rebirth v3.60

Changes
-------
v1.0 -
    -Skipped 0.01-1.0 alphas and Published at 1.0

Uninstall
---------

Unsuscribe in Steam WS to deactivate/remove. Should not have any effect on save games.

Credits
-------
BlackRain whose NPCSpawn Mod inspired me to start my own modding. (thanks)
J3ANP3T3R, Yorrick Vander, UniTrader, euclid + Mad_Joker.<?xml version="1.0" encoding="utf-8"?>
<content id="" name="" description="" author="Apostilite" version="101" date="2015-09-09" save="false" lastupdate="">
  <dependency version="360"/>
  <text language="44" name="Baely Jump" description="Adds a Jump drive feature to the Albion Skunk" author="Apostilite" version="101" date="2015-09-8" save="false"/>
</content>
