Difference between revisions of "Script - Flashy Deaths (new)"
From FreeSpace Wiki
| Line 486: | Line 486: | ||
<pre> | <pre> | ||
==Terran== | ==Terran== | ||
| + | Name: GTDr Amazon Advanced | ||
| + | Width: 80 | ||
| + | Height: 100 | ||
| + | Length: 200 | ||
| + | Detonation Radius: 100 | ||
| + | Detonation Effects: 2, 3 | ||
| + | Flash Radius: 750 | ||
| + | Flash Effect: 1 | ||
Name: GTFr Triton | Name: GTFr Triton | ||
| Line 492: | Line 500: | ||
Length: 250 | Length: 250 | ||
Detonation Radius: 100 | Detonation Radius: 100 | ||
| + | Detonation Effects: 2, 3 | ||
Flash Radius: 750 | Flash Radius: 750 | ||
| + | Flash Effect: 1 | ||
| + | |||
| + | Name: TC-Tri | ||
| + | Width: 110 | ||
| + | Height: 130 | ||
| + | Length: 250 | ||
| + | Detonation Radius: 100 | ||
Detonation Effects: 2, 3 | Detonation Effects: 2, 3 | ||
| − | Flash Effect: 1 | + | Flash Radius: 750 |
| + | Flash Effect: 1 | ||
Name: GTFr Poseidon | Name: GTFr Poseidon | ||
| Line 501: | Line 518: | ||
Length: 60 | Length: 60 | ||
Detonation Radius: 25 | Detonation Radius: 25 | ||
| + | Detonation Effects: 2, 3 | ||
Flash Radius: 700 | Flash Radius: 700 | ||
| − | |||
Flash Effect: 1 | Flash Effect: 1 | ||
| Line 510: | Line 527: | ||
Length: 250 | Length: 250 | ||
Detonation Radius: 100 | Detonation Radius: 100 | ||
| + | Detonation Effects: 2, 3 | ||
Flash Radius: 1000 | Flash Radius: 1000 | ||
| − | |||
Flash Effect: 1 | Flash Effect: 1 | ||
| Line 519: | Line 536: | ||
Length: 375 | Length: 375 | ||
Detonation Radius: 200 | Detonation Radius: 200 | ||
| + | Detonation Effects: 2, 3 | ||
Flash Radius: 1700 | Flash Radius: 1700 | ||
| − | |||
Flash Effect: 1 | Flash Effect: 1 | ||
| Line 528: | Line 545: | ||
Length: 250 | Length: 250 | ||
Detonation Radius: 100 | Detonation Radius: 100 | ||
| + | Detonation Effects: 2, 3 | ||
Flash Radius: 1000 | Flash Radius: 1000 | ||
| − | |||
Flash Effect: 1 | Flash Effect: 1 | ||
| Line 537: | Line 554: | ||
Length: 160 | Length: 160 | ||
Detonation Radius: 50 | Detonation Radius: 50 | ||
| + | Detonation Effects: 2, 3 | ||
Flash Radius: 800 | Flash Radius: 800 | ||
| − | |||
Flash Effect: 1 | Flash Effect: 1 | ||
| Line 546: | Line 563: | ||
Length: 255 | Length: 255 | ||
Detonation Radius: 80 | Detonation Radius: 80 | ||
| + | Detonation Effects: 2, 3 | ||
Flash Radius: 800 | Flash Radius: 800 | ||
| − | |||
Flash Effect: 1 | Flash Effect: 1 | ||
| Line 555: | Line 572: | ||
Length: 110 | Length: 110 | ||
Detonation Radius: 75 | Detonation Radius: 75 | ||
| + | Detonation Effects: 2, 3 | ||
Flash Radius: 600 | Flash Radius: 600 | ||
| − | |||
Flash Effect: 1 | Flash Effect: 1 | ||
| Line 564: | Line 581: | ||
Length: 1900 | Length: 1900 | ||
Detonation Radius: 500 | Detonation Radius: 500 | ||
| + | Detonation Effects: 2, 3 | ||
Flash Radius: 2500 | Flash Radius: 2500 | ||
| − | |||
Flash Effect: 1 | Flash Effect: 1 | ||
| Line 573: | Line 590: | ||
Length: 1900 | Length: 1900 | ||
Detonation Radius: 500 | Detonation Radius: 500 | ||
| + | Detonation Effects: 2, 3 | ||
Flash Radius: 2500 | Flash Radius: 2500 | ||
| − | |||
Flash Effect: 1 | Flash Effect: 1 | ||
| Line 582: | Line 599: | ||
Length: 3200 | Length: 3200 | ||
Detonation Radius: 800 | Detonation Radius: 800 | ||
| + | Detonation Effects: 2, 3 | ||
Flash Radius: 4000 | Flash Radius: 4000 | ||
| − | |||
Flash Effect: 1 | Flash Effect: 1 | ||
| Line 591: | Line 608: | ||
Length: 800 | Length: 800 | ||
Detonation Radius: 1000 | Detonation Radius: 1000 | ||
| + | Detonation Effects: 2, 3 | ||
Flash Radius: 5000 | Flash Radius: 5000 | ||
| − | |||
Flash Effect: 1 | Flash Effect: 1 | ||
| Line 600: | Line 617: | ||
Length: 8000 | Length: 8000 | ||
Detonation Radius: 10000 | Detonation Radius: 10000 | ||
| + | Detonation Effects: 2, 3 | ||
Flash Radius: 50000 | Flash Radius: 50000 | ||
| − | |||
Flash Effect: 1 | Flash Effect: 1 | ||
| Line 609: | Line 626: | ||
Length: 750 | Length: 750 | ||
Detonation Radius: 200 | Detonation Radius: 200 | ||
| + | Detonation Effects: 2, 3 | ||
Flash Radius: 1500 | Flash Radius: 1500 | ||
| − | |||
Flash Effect: 1 | Flash Effect: 1 | ||
| Line 618: | Line 635: | ||
Length: 275 | Length: 275 | ||
Detonation Radius: 100 | Detonation Radius: 100 | ||
| + | Detonation Effects: 2, 3 | ||
Flash Radius: 1000 | Flash Radius: 1000 | ||
| − | |||
Flash Effect: 1 | Flash Effect: 1 | ||
| Line 627: | Line 644: | ||
Length: 1000 | Length: 1000 | ||
Detonation Radius: 300 | Detonation Radius: 300 | ||
| + | Detonation Effects: 2, 3 | ||
Flash Radius: 1500 | Flash Radius: 1500 | ||
| − | |||
Flash Effect: 1 | Flash Effect: 1 | ||
| Line 636: | Line 653: | ||
Length: 8000 | Length: 8000 | ||
Detonation Radius: 10000 | Detonation Radius: 10000 | ||
| + | Detonation Effects: 2, 3 | ||
Flash Radius: 50000 | Flash Radius: 50000 | ||
| − | |||
Flash Effect: 1 | Flash Effect: 1 | ||
| Line 645: | Line 662: | ||
Length: 35 | Length: 35 | ||
Detonation Radius: 25 | Detonation Radius: 25 | ||
| + | Detonation Effects: 2, 3 | ||
Flash Radius: 500 | Flash Radius: 500 | ||
| − | |||
Flash Effect: 1 | Flash Effect: 1 | ||
| Line 654: | Line 671: | ||
Length: 160 | Length: 160 | ||
Detonation Radius: 75 | Detonation Radius: 75 | ||
| + | Detonation Effects: 2, 3 | ||
Flash Radius: 600 | Flash Radius: 600 | ||
| − | |||
Flash Effect: 1 | Flash Effect: 1 | ||
| Line 663: | Line 680: | ||
Length: 8000 | Length: 8000 | ||
Detonation Radius: 10000 | Detonation Radius: 10000 | ||
| + | Detonation Effects: 2, 3 | ||
Flash Radius: 50000 | Flash Radius: 50000 | ||
| − | |||
Flash Effect: 1 | Flash Effect: 1 | ||
| Line 672: | Line 689: | ||
Length: 8000 | Length: 8000 | ||
Detonation Radius: 10000 | Detonation Radius: 10000 | ||
| + | Detonation Effects: 2, 3 | ||
Flash Radius: 50000 | Flash Radius: 50000 | ||
| − | |||
Flash Effect: 1 | Flash Effect: 1 | ||
| Line 681: | Line 698: | ||
Length: 8000 | Length: 8000 | ||
Detonation Radius: 10000 | Detonation Radius: 10000 | ||
| + | Detonation Effects: 2, 3 | ||
Flash Radius: 50000 | Flash Radius: 50000 | ||
| − | |||
Flash Effect: 1 | Flash Effect: 1 | ||
| Line 692: | Line 709: | ||
Length: 55 | Length: 55 | ||
Detonation Radius: 25 | Detonation Radius: 25 | ||
| + | Detonation Effects: 2, 3 | ||
Flash Radius: 600 | Flash Radius: 600 | ||
| − | |||
Flash Effect: 1 | Flash Effect: 1 | ||
| Line 701: | Line 718: | ||
Length: 60 | Length: 60 | ||
Detonation Radius: 25 | Detonation Radius: 25 | ||
| + | Detonation Effects: 2, 3 | ||
Flash Radius: 600 | Flash Radius: 600 | ||
| − | |||
Flash Effect: 1 | Flash Effect: 1 | ||
| Line 710: | Line 727: | ||
Length: 110 | Length: 110 | ||
Detonation Radius: 50 | Detonation Radius: 50 | ||
| + | Detonation Effects: 2, 3 | ||
Flash Radius: 800 | Flash Radius: 800 | ||
| − | |||
Flash Effect: 1 | Flash Effect: 1 | ||
| Line 719: | Line 736: | ||
Length: 350 | Length: 350 | ||
Detonation Radius: 100 | Detonation Radius: 100 | ||
| + | Detonation Effects: 2, 3 | ||
Flash Radius: 900 | Flash Radius: 900 | ||
| − | |||
Flash Effect: 1 | Flash Effect: 1 | ||
| Line 728: | Line 745: | ||
Length: 240 | Length: 240 | ||
Detonation Radius: 100 | Detonation Radius: 100 | ||
| + | Detonation Effects: 2, 3 | ||
Flash Radius: 1000 | Flash Radius: 1000 | ||
| − | |||
Flash Effect: 1 | Flash Effect: 1 | ||
| Line 737: | Line 754: | ||
Length: 325 | Length: 325 | ||
Detonation Radius: 100 | Detonation Radius: 100 | ||
| + | Detonation Effects: 2, 3 | ||
Flash Radius: 800 | Flash Radius: 800 | ||
| − | |||
Flash Effect: 1 | Flash Effect: 1 | ||
| Line 746: | Line 763: | ||
Length: 620 | Length: 620 | ||
Detonation Radius: 200 | Detonation Radius: 200 | ||
| + | Detonation Effects: 2, 3 | ||
Flash Radius: 1500 | Flash Radius: 1500 | ||
| − | |||
Flash Effect: 1 | Flash Effect: 1 | ||
| Line 755: | Line 772: | ||
Length: 2200 | Length: 2200 | ||
Detonation Radius: 500 | Detonation Radius: 500 | ||
| + | Detonation Effects: 2, 3 | ||
Flash Radius: 2500 | Flash Radius: 2500 | ||
| − | |||
Flash Effect: 1 | Flash Effect: 1 | ||
| Line 764: | Line 781: | ||
Length: 200 | Length: 200 | ||
Detonation Radius: 75 | Detonation Radius: 75 | ||
| + | Detonation Effects: 2, 3 | ||
Flash Radius: 600 | Flash Radius: 600 | ||
| − | |||
Flash Effect: 1 | Flash Effect: 1 | ||
| Line 773: | Line 790: | ||
Length: 2200 | Length: 2200 | ||
Detonation Radius: 500 | Detonation Radius: 500 | ||
| + | Detonation Effects: 2, 3 | ||
Flash Radius: 2500 | Flash Radius: 2500 | ||
| − | |||
Flash Effect: 1 | Flash Effect: 1 | ||
| Line 782: | Line 799: | ||
Length: 90 | Length: 90 | ||
Detonation Radius: 40 | Detonation Radius: 40 | ||
| + | Detonation Effects: 2, 3 | ||
Flash Radius: 500 | Flash Radius: 500 | ||
| − | |||
Flash Effect: 1 | Flash Effect: 1 | ||
</pre> | </pre> | ||
Revision as of 07:37, 21 March 2009
Function
New version of the flashy deaths effect by Wanderer. You may wish to check out the script's thread on HLP.
Please note that this script requires two additional files in .cfg format whose specs can be found below.
Table Entry
#Conditional Hooks
$Application: FS2_Open
$On Mission Start:
[
---------------
-- functions --
---------------
--- get newline and make sure its lowercase
function get_next_line(nfile)
-- read the line
nline = nfile:read("*l")
-- change to lowercase
if nline ~= nil then
nline = nline:lower()
end
return nline
end
--- find keyword and return the place where it ends
function find_keyword(line_to_parse, keyword)
-- find any instances of the keyword
keyword = keyword:lower()
key_s, key_e = line_to_parse:find(keyword)
-- if we cant find a thing
if key_s == nil then
return nil
end
return key_e
end
--- function to initialize the vars
function init_entry(name)
arrayShipW[name] = 0
arrayShipH[name] = 0
arrayShipL[name] = 0
arrayShipDetRadius[name] = 0
arrayShipFlsRadius[name] = 0
arrayShipDetEffects[name] = { }
arrayShipFlsEffect[name] = 0
arrayShipDetMult[name] = 1
end
--- specific parsing funcs to make things easier to read ---
--- string or rather substring parser
function parse_string(start_key, line_to_parse)
local substring = line_to_parse:sub(start_key)
-- remove empty spaces
local substring_start = substring:find("%a")
substring = substring:sub(substring_start)
return substring
end
--- function to parse numbers
function parse_number(start_key, line_to_parse)
result = line_to_parse:match("%d+", e_key)
return tonumber(result)
end
--- function to parse arrays of numbers
function parse_number_array(start_key, line_to_parse)
-- stuff the array
local r = { }
for p in line_to_parse:gmatch("%d+") do
p = tonumber(p)
p = math.floor(p)
table.insert(r, p)
end
return r
end
--- function to parse things
function parse_entry(keyword, flashfile, type, use_same_line)
local new_entry = nil
local return_val
local return_array = {}
local c_line
if use_same_line == false then
c_line = get_next_line(flashfile)
if c_line == nil then
-- end of file
return -2, false, return_array
end
while c_line:len() == 0 do
c_line = get_next_line(flashfile)
end
new_entry = find_keyword(c_line, "Name:")
else
c_line = use_same_line
end
-- check if we found a new entry
if new_entry == nil then
c_key = find_keyword(c_line, keyword)
if c_key == nil then
-- we didn't find the thing...
return -1, c_line, return_array
end
if type == "n" then
-- soo... parse a number
return_val = parse_number(c_key, c_line)
return return_val, false, return_array
elseif type == "array_n" then
-- soo... parse an array of numbers
return_array = parse_number_array(c_key, c_line)
return_val = #return_array
return return_val, false, return_array
end
else
-- found new entry instead...
return -2, c_line, return_array
end
end
-----------------------------------------------
-- loading the flash animations
function parse_flash_ani_file(n_file)
local something_to_parse = true
while something_to_parse == true do
local c_line = get_next_line(n_file)
-- if we are at end of file, stop the loop
if c_line == nil then
something_to_parse = false
break
end
local entry_start = find_keyword(c_line, "Filename:")
-- if we found something else, try next line
if entry_start ~= nil then
-- ok... so we should have a good entry candidate and all that
local current_entry = parse_string(entry_start, c_line)
animation = gr.loadTexture(current_entry, true)
table.insert(arrayDetEffects, animation)
if animation:isValid() == false then
ba.warning("Animation defined in " .. filename_flashani .. " " .. current_entry .. " is invalid")
end
end
end
end
-- actual flash effect parsing function
function parse_flash_file(flashfile)
-- pick first line
entries_left = true
use_same_line = false
while entries_left == true do
-- find ship name
if use_same_line == false then
use_same_line = get_next_line(flashfile)
end
if use_same_line == nil then
-- end of file
entries_left = false
break
end
if use_same_line:len() == 0 then
use_same_line = false
else
entry_start = find_keyword(use_same_line, "Name:")
if entry_start ~= nil then
-- insert while loop here to enable breaks as next statements
while entry_start ~= nil do
current_entry = parse_string(entry_start, use_same_line)
-- init the entry
init_entry(current_entry)
use_same_line = false
local temp_val = nil
local temp_arr = nil
entry_start = nil
-- detonation box width
temp_val, use_same_line = parse_entry("Width:", flashfile, "n", use_same_line)
if temp_val == -2 then
break
else
arrayShipW[current_entry] = temp_val
end
-- detonation box height
temp_val, use_same_line = parse_entry("Height:", flashfile, "n", use_same_line)
if temp_val == -2 then
break
else
arrayShipH[current_entry] = temp_val
end
-- detonation box lenght
temp_val, use_same_line = parse_entry("Length:", flashfile, "n", use_same_line)
if temp_val == -2 then
break
else
arrayShipL[current_entry] = temp_val
end
-- detonation radius
temp_val, use_same_line = parse_entry("Detonation Radius:", flashfile, "n", use_same_line)
if temp_val == -2 then
break
else
arrayShipDetRadius[current_entry] = temp_val
end
-- final flash radius
temp_val, use_same_line = parse_entry("Flash Radius:", flashfile, "n", use_same_line)
if temp_val == -2 then
break
else
arrayShipFlsRadius[current_entry] = temp_val
end
-- random detonation effects
local temp_arr = {}
temp_val, use_same_line, temp_arr = parse_entry("Detonation Effects:", flashfile, "array_n", use_same_line)
if temp_val == -2 then
break
else
arrayShipDetEffects[current_entry] = temp_arr
end
-- flash effect
temp_val, use_same_line = parse_entry("Flash Effect:", flashfile, "n", use_same_line)
if temp_val == -2 then
break
else
math.floor(temp_val)
arrayShipFlsEffect[current_entry] = temp_val
end
-- multiplier for the detonation occurrance
temp_val, use_same_line = parse_entry("Detonation Multiplier:", flashfile, "n", use_same_line)
if temp_val == -2 then
break
else
arrayShipDetMult[current_entry] = temp_val
end
end
else
use_same_line = get_next_line(flashfile)
end
end
end
end
----------
-- main --
----------
-- init arrays
arrayShipName = {}
arrayShipW = {}
arrayShipH = {}
arrayShipL = {}
arrayShipDetRadius = {}
arrayShipFlsRadius = {}
arrayShipDetEffects = {}
arrayShipFlsEffect = {}
arrayDetEffects = {}
arrayShipDetMult = {}
-- open reference file, if any
-- if failed... pass the script
filename_flash = "expl_flashes.cfg"
filename_flashani = "exp_ani_flashes.cfg"
if ((cf.fileExists(filename_flash, "data/tables/", false) == true) and (cf.fileExists(filename_flashani, "data/tables/", false) == true)) then
boolflashfileOK = true
end
if boolflashfileOK then
-- open to read the contents
flashanifile = cf.openFile(filename_flashani, "r", "data/tables/")
-- parse contents
parse_flash_ani_file(flashanifile)
-- close the file
flashanifile:close()
-- continue with the rest in similar manner
flashfile = cf.openFile(filename_flash, "r", "data/tables/")
parse_flash_file(flashfile)
flashfile:close()
-- setup rest of the required stuff
math.randomseed( os.time() )
floatCounter = {}
vectorNull = ba.createVector(0,0,0)
arrayFlashShipList = {}
arrayFlashShips = {}
arrayFlashShipClass = {}
arrayFlashShipPosition = {}
arrayFlashedShips = {}
else
ba.warning("Failed to initialize flashy deaths script")
end
]
$State: GS_STATE_GAME_PLAY
$On Frame:
[
floatMissionTime = mn.getMissionTime()
if ((floatMissionTime ~= nil) and boolflashfileOK) then
floatFrameTime = ba.getFrametime(true)
floatRandom = math.random()
integerShips = #mn.Ships
for h = 1, integerShips do
objectShip = mn.Ships[h]
stringShipClass = objectShip.Class.Name:lower()
--ONLY SHIPS WITH EFFECTS--
if ((arrayShipFlsRadius[stringShipClass] ~= nil) and (arrayShipDetRadius[stringShipClass] ~= nil)) then
stringShipName = objectShip.Name
floatHP = objectShip.HitpointsLeft
if floatHP <= 0 then
vectorShipPosition = objectShip.Position
if arrayShipFlsRadius[stringShipClass] > 0 then
if arrayFlashShipList[stringShipName] == nil then
arrayFlashShipList[stringShipName] = 1
arrayFlashShipClass[stringShipName] = stringShipClass
table.insert(arrayFlashShips,stringShipName)
end
end
if arrayShipDetRadius[stringShipClass] > 0 then
arrayFlashShipPosition[stringShipName] = vectorShipPosition
if floatCounter[stringShipName] == nil then
floatCounter[stringShipName] = 0
end
floatRandom = math.random()
local n_ShpDetEffects = #arrayShipDetEffects[stringShipClass]
while floatCounter[stringShipName] > floatRandom do
floatCounter[stringShipName] = floatCounter[stringShipName] - floatRandom
orientationShip = objectShip.Orientation
local number_of_attempts = arrayShipDetMult[stringShipClass]
local n_partials
number_of_attempts, n_partials = math.modf(number_of_attempts)
if n_partials ~= 0 then
if math.random() > n_partials then
number_of_attempts = number_of_attempts + 1
end
end
for n = 1,number_of_attempts do
local floatRand_1 = (math.random() - 0.5) * arrayShipW[stringShipClass]
local floatRand_2 = (math.random() - 0.5) * arrayShipH[stringShipClass]
local floatRand_3 = (math.random() - 0.5) * arrayShipL[stringShipClass]
local vectorRand = ba.createVector(floatRand_1,floatRand_2,floatRand_3)
local floatDetoSize = (math.random() + 0.5) * arrayShipDetRadius[stringShipClass]
local vectorOrientedRand = orientationShip:unrotateVector(vectorRand)
local vectorDetoPosition = vectorShipPosition + vectorOrientedRand
local l_arrayShpDetEffects = arrayShipDetEffects[stringShipClass]
if n_ShpDetEffects == 1 then
animationDet = l_arrayShpDetEffects[1]
if animationDet:isValid() then
ts.createParticle(vectorDetoPosition,vectorNull,floatFrameTime,floatDetoSize,PARTICLE_BITMAP,-1,false,animationDet)
end
elseif n_ShpDetEffects > 1 then
numberRandomID = math.random(n_ShpDetEffects)
animationDet = arrayDetEffects[l_arrayShpDetEffects[numberRandomID]]
if animationDet:isValid() then
ts.createParticle(vectorDetoPosition,vectorNull,floatFrameTime,floatDetoSize,PARTICLE_BITMAP,-1,false,animationDet)
end
end
end
if floatCounter[stringShipName] <= 0 then
floatCounter[stringShipName] = 0
else
floatRandom = math.random()
end
end
floatCounter[stringShipName] = floatCounter[stringShipName] + floatFrameTime
end
end
end
floatFlashShips = #arrayFlashShips
for x=1,floatFlashShips do
stringFlashShipName = arrayFlashShips[x]
if arrayFlashShipList[stringFlashShipName] == 1 then
if mn.Ships[stringFlashShipName]:isValid() == false then
arrayFlashShipList[stringFlashShipName] = nil
local vectorFlashPosition = arrayFlashShipPosition[stringFlashShipName]
arrayFlashShipPosition[stringFlashShipName] = nil
local stringFlashClass = arrayFlashShipClass[stringFlashShipName]
arrayFlashShipClass[stringFlashShipName] = nil
local floatFlashRadius = (math.random() + 0.5) * arrayShipFlsRadius[stringFlashClass]
local animationFlash = arrayDetEffects[arrayShipFlsEffect[stringFlashClass]]
if animationFlash:isValid() then
ts.createParticle(vectorFlashPosition,vectorNull,floatFrameTime,floatFlashRadius,PARTICLE_BITMAP,-1,false,animationFlash)
end
table.insert(arrayFlashedShips,x)
end
end
end
integerFlashedShips = #arrayFlashedShips
if integerFlashedShips > 0 then
for o=integerFlashedShips,1,-1 do
table.remove(arrayFlashShips,arrayFlashedShips[o])
end
arrayFlashedShips = nil
arrayFlashedShips = {}
end
end
end
]
$Application: FS2_Open
$On Mission End:
[
-- kill the arrays...
if boolflashfileOK then
arrayShipName = nil
arrayShipW = nil
arrayShipH = nil
arrayShipL = nil
arrayShipDetRadius = nil
arrayShipFlsRadius = nil
arrayShipDetEffects = nil
arrayShipFlsEffect = nil
local n_effects = #arrayDetEffects
for j=1,n_effects do
arrayDetEffects[j]:unload()
end
arrayDetEffects = nil
floatCounter = nil
arrayFlashShipList = nil
arrayFlashShips = nil
arrayFlashShipClass = nil
arrayFlashShipPosition = nil
arrayFlashedShips = nil
boolflashfileOK = nil
end
]
#End
expl_flashes.cfg
Please note that the following list isn't complete yet.
==Terran== Name: GTDr Amazon Advanced Width: 80 Height: 100 Length: 200 Detonation Radius: 100 Detonation Effects: 2, 3 Flash Radius: 750 Flash Effect: 1 Name: GTFr Triton Width: 110 Height: 130 Length: 250 Detonation Radius: 100 Detonation Effects: 2, 3 Flash Radius: 750 Flash Effect: 1 Name: TC-Tri Width: 110 Height: 130 Length: 250 Detonation Radius: 100 Detonation Effects: 2, 3 Flash Radius: 750 Flash Effect: 1 Name: GTFr Poseidon Width: 35 Height: 30 Length: 60 Detonation Radius: 25 Detonation Effects: 2, 3 Flash Radius: 700 Flash Effect: 1 Name: @GTC Fenris Width: 150 Height: 200 Length: 250 Detonation Radius: 100 Detonation Effects: 2, 3 Flash Radius: 1000 Flash Effect: 1 Name: GTM Hippocrates Width: 80 Height: 275 Length: 375 Detonation Radius: 200 Detonation Effects: 2, 3 Flash Radius: 1700 Flash Effect: 1 Name: GTC Leviathan Width: 150 Height: 200 Length: 250 Detonation Radius: 100 Detonation Effects: 2, 3 Flash Radius: 1000 Flash Effect: 1 Name: GTSc Faustus Width: 95 Height: 85 Length: 160 Detonation Radius: 50 Detonation Effects: 2, 3 Flash Radius: 800 Flash Effect: 1 Name: GTG Zephyrus Width: 80 Height: 70 Length: 255 Detonation Radius: 80 Detonation Effects: 2, 3 Flash Radius: 800 Flash Effect: 1 Name: GTA Charbydis Width: 60 Height: 90 Length: 110 Detonation Radius: 75 Detonation Effects: 2, 3 Flash Radius: 600 Flash Effect: 1 Name: GTD Orion Width: 500 Height: 500 Length: 1900 Detonation Radius: 500 Detonation Effects: 2, 3 Flash Radius: 2500 Flash Effect: 1 Name: GTD Hecate Width: 700 Height: 500 Length: 1900 Detonation Radius: 500 Detonation Effects: 2, 3 Flash Radius: 2500 Flash Effect: 1 Name: GTD Hades Width: 700 Height: 500 Length: 3200 Detonation Radius: 800 Detonation Effects: 2, 3 Flash Radius: 4000 Flash Effect: 1 Name: GTI Arcadia Width: 1000 Height: 1200 Length: 800 Detonation Radius: 1000 Detonation Effects: 2, 3 Flash Radius: 5000 Flash Effect: 1 Name: GTVA Colossus Width: 10000 Height: 12000 Length: 8000 Detonation Radius: 10000 Detonation Effects: 2, 3 Flash Radius: 50000 Flash Effect: 1 Name: GTCv Deimos Width: 350 Height: 400 Length: 750 Detonation Radius: 200 Detonation Effects: 2, 3 Flash Radius: 1500 Flash Effect: 1 Name: GTC Aeolus Width: 80 Height: 90 Length: 275 Detonation Radius: 100 Detonation Effects: 2, 3 Flash Radius: 1000 Flash Effect: 1 Name: NTF Iceni Width: 400 Height: 450 Length: 1000 Detonation Radius: 300 Detonation Effects: 2, 3 Flash Radius: 1500 Flash Effect: 1 Name: NTF Boadicea Width: 10000 Height: 12000 Length: 8000 Detonation Radius: 10000 Detonation Effects: 2, 3 Flash Radius: 50000 Flash Effect: 1 Name: @GTT Elysium Width: 35 Height: 45 Length: 35 Detonation Radius: 25 Detonation Effects: 2, 3 Flash Radius: 500 Flash Effect: 1 Name: @GTT Argo Width: 95 Height: 70 Length: 160 Detonation Radius: 75 Detonation Effects: 2, 3 Flash Radius: 600 Flash Effect: 1 Name: GTI Ganymede Width: 10000 Height: 12000 Length: 8000 Detonation Radius: 10000 Detonation Effects: 2, 3 Flash Radius: 50000 Flash Effect: 1 Name: Knossos Width: 10000 Height: 12000 Length: 8000 Detonation Radius: 10000 Detonation Effects: 2, 3 Flash Radius: 50000 Flash Effect: 1 Name: TC-Meson Bomb Width: 10000 Height: 12000 Length: 8000 Detonation Radius: 10000 Detonation Effects: 2, 3 Flash Radius: 50000 Flash Effect: 1 ==Vasudan== Name: PVFr Ma'at Width: 20 Height: 20 Length: 55 Detonation Radius: 25 Detonation Effects: 2, 3 Flash Radius: 600 Flash Effect: 1 Name: GVFr Bes Width: 25 Height: 15 Length: 60 Detonation Radius: 25 Detonation Effects: 2, 3 Flash Radius: 600 Flash Effect: 1 Name: GVFr Satis Width: 45 Height: 50 Length: 110 Detonation Radius: 50 Detonation Effects: 2, 3 Flash Radius: 800 Flash Effect: 1 Name: GVG Anuket Width: 85 Height: 80 Length: 350 Detonation Radius: 100 Detonation Effects: 2, 3 Flash Radius: 900 Flash Effect: 1 Name: GVC Aten Width: 150 Height: 50 Length: 240 Detonation Radius: 100 Detonation Effects: 2, 3 Flash Radius: 1000 Flash Effect: 1 Name: GVC Mentu Width: 180 Height: 140 Length: 325 Detonation Radius: 100 Detonation Effects: 2, 3 Flash Radius: 800 Flash Effect: 1 Name: GVCv Sobek Width: 275 Height: 275 Length: 620 Detonation Radius: 200 Detonation Effects: 2, 3 Flash Radius: 1500 Flash Effect: 1 Name: GVD Typhon Width: 700 Height: 300 Length: 2200 Detonation Radius: 500 Detonation Effects: 2, 3 Flash Radius: 2500 Flash Effect: 1 Name: GVA Setekh Width: 100 Height: 100 Length: 200 Detonation Radius: 75 Detonation Effects: 2, 3 Flash Radius: 600 Flash Effect: 1 Name: GVD Hatshepsut Width: 700 Height: 600 Length: 2200 Detonation Radius: 500 Detonation Effects: 2, 3 Flash Radius: 2500 Flash Effect: 1 Name: GTSG Mjolnir Width: 100 Height: 110 Length: 90 Detonation Radius: 40 Detonation Effects: 2, 3 Flash Radius: 500 Flash Effect: 1
exp_ani_flashes.cfg
Filename: EXP_flash Filename: exp04 Filename: exp05
Notes
As stated above the shiplist isn't complete yet, meaning that the destruction of any ships other than the ones specified in the current expl_flashes.cfg will not trigger any effect.