Name | Type | is_array | initial_value |
/*
=====BoardEx v1.5
=====Made by: Mckill2009
This is just a Multiboard System, simple to use even for GUIer's
INSTALLATION:
- Copy and Paste the "BoardEx" trigger to your map.
- Read the instructions. DONE!
API:
static method create takes integer rowQty, integer columnQty, boolean showtexts, boolean showicons returns thistype
method setTitle takes string s returns nothing
method setAllWidth takes real width returns nothing
method setIndividualWidths takes integer row, integer column, real width returns nothing
method showValues takes integer row, integer column, boolean showtext, boolean showicon returns nothing
method display takes boolean minimize, boolean show returns nothing
method setIcon takes integer row, integer column, string iconpath returns nothing
method setText takes integer row, integer column, string text returns nothing
method destroy takes nothing returns nothing
*/
library BoardEx
struct BoardEx extends array
private multiboard MB
private static constant integer boardLimit = 8191
private static multiboarditem boardItem = null
private static thistype countBoard = 0
//===This is the first thing you need to do, setting up the multiboard
//===Take note that this allocates a new index
static method create takes integer rowQty, integer columnQty, boolean showtexts, boolean showicons returns thistype
local thistype this
if countBoard==boardLimit then
debug call BJDebugMsg("boardSetUp ERROR: Maximum exceeded: "+I2S(boardLimit))
else
set countBoard = countBoard + 1
set this = countBoard
set .MB = CreateMultiboard()
call .display(false,true)
call MultiboardSetColumnCount(.MB, columnQty)
call MultiboardSetRowCount(.MB, rowQty)
call MultiboardSetItemsStyle(.MB, showtexts, showicons)
endif
return this
endmethod
method setTitle takes string s returns nothing
call MultiboardSetTitleText(.MB, s)
endmethod
//===Sets all width of the multiboard in uniform order, real value should be 0.1 or less
method setAllWidth takes real width returns nothing
call MultiboardSetItemsWidth(.MB, width)
endmethod
//===Sets individual widths, real value should be 0.1 or less
method setIndividualWidths takes integer row, integer column, real width returns nothing
set boardItem = MultiboardGetItem(.MB, row, column)
call MultiboardSetItemWidth(boardItem, width)
call MultiboardReleaseItem(boardItem)
endmethod
//===Show/Hide values such as text or icons
method showValues takes integer row, integer column, boolean showtext, boolean showicon returns nothing
set boardItem = MultiboardGetItem(.MB, row, column)
call MultiboardSetItemStyle(boardItem, showtext, showicon)
call MultiboardReleaseItem(boardItem)
endmethod
//===Maximize/Minimize, Show/Hide multiboard
method display takes boolean minimize, boolean show returns nothing
call MultiboardDisplay(.MB, show)
call MultiboardMinimize(.MB, minimize)
endmethod
//===Change the icon, showicon from the showValues must be true
method setIcon takes integer row, integer column, string iconpath returns nothing
set boardItem = MultiboardGetItem(.MB, row, column)
call MultiboardSetItemIcon(boardItem, iconpath)
call MultiboardReleaseItem(boardItem)
endmethod
//===This is the MAIN multiboard value and text change
method setText takes integer row, integer column, string text returns nothing
set boardItem = MultiboardGetItem(.MB, row, column)
call MultiboardSetItemValue(boardItem, text)
call MultiboardReleaseItem(boardItem)
endmethod
//===destroys the 'this' (indexed) multiboard
method destroy takes nothing returns nothing
call MultiboardClear(.MB)
call DestroyMultiboard(.MB)
set .MB = countBoard.MB
set countBoard = countBoard - 1
endmethod
endstruct
endlibrary
library FirstInitialization initializer Init
// Setting up global declarations
globals
boolean LoopingCommand
boolean ShowBoard
boolean array ArrowKey
camerasetup Camera
effect array TempEffect
integer CamMode
integer NewTerrainType
integer SystemInUse
integer TerrainType
integer array Index
integer array MinIndex
integer array MaxIndex
integer array TerrainChoice
integer array WeatherChoice
lightning TempLightning = null
real XofActor
real YofActor
real NewYofActor
real FinalYofActor
real array CamSetting
string array AnimationName
string array AnimationNameA
string array BootsChoiceLeft
string array BootsChoiceRight
string array BootsName
string array BracersChoiceLeft
string array BracersChoiceRight
string array BracersName
string array CameraModeName
string array ChestChoice
string array ChestName
string array FadeChoice
string array FadeName
string array HelmetChoice
string array HelmetName
string array LightningChoice
string array LightningName
string array Line
string array ShieldChoice
string array ShieldName
string array SkyChoice
string array SkyName
string array SwordChoice
string array SwordName
string array TerrainName
string array UbersplatChoice
string array UbersplatName
string array WeatherName
trigger Looping
unit array Actor
unit array ControlPanel
BoardEx Board
endglobals
// --------------------------------------------
private function InitActionsFirst takes nothing returns nothing
// Terrain Tile Name Changer
set Index[0] = 0
set TerrainName[0] = "None"
set TerrainName[1] = "('Ldrt') Lordaeron Summer Dirt (cliff)"
set TerrainName[2] = "('Ldro') Lordaeron Summer Rough Dirt"
set TerrainName[3] = "('Ldrg') Lordaeron Summer Grassy Dirt"
set TerrainName[4] = "('Lrok') Lordaeron Summer Rock"
set TerrainName[5] = "('Lgrs') Lordaeron Summer Grass (cliff)"
set TerrainName[6] = "('Lgrd') Lordaeron Summer Dark Grass"
set TerrainName[7] = "('Fdrt') Lordaeron Fall Dirt (cliff)"
set TerrainName[8] = "('Fdro') Lordaeron Fall Rough Dirt"
// --------------------------------------------
// Terrain Tile Index Changer
set TerrainChoice[1] = 'Ldrt'
set TerrainChoice[2] = 'Ldro'
set TerrainChoice[3] = 'Ldrg'
set TerrainChoice[4] = 'Lrok'
set TerrainChoice[5] = 'Lgrs'
set TerrainChoice[6] = 'Lgrd'
set TerrainChoice[7] = 'Fdrt'
set TerrainChoice[8] = 'Fdro'
// Terrain Tile Max and Min Index
set MinIndex[0] = 0
set MaxIndex[0] = 8
// --------------------------------------------
// Ubersplat Name Changer
set Index[1] = 0
set UbersplatName[0] = "None"
set UbersplatName[1] = "(\"LSDS\") Lordaeron Summer Plain Dirt Small"
set UbersplatName[2] = "(\"LSDM\") Lordaeron Summer Plain Dirt Medium"
set UbersplatName[3] = "(\"LSDL\") Lordaeron Summer Plain Dirt Large"
set UbersplatName[4] = "(\"HCRT\") Human Crater"
set UbersplatName[5] = "(\"UDSU\") Undead Uber Splat"
set UbersplatName[6] = "(\"DNCS\") Death Neutral City Building Small"
set UbersplatName[7] = "(\"HMTP\") Human Mass Teleport"
set UbersplatName[8] = "(\"SCTP\") Scroll Of Town Portal"
set UbersplatName[9] = "(\"AMRC\") Amulet Of Recall"
set UbersplatName[10] = "(\"DRKC\") Dark Conversion"
set UbersplatName[11] = "(\"DOSB\") Death Orc Small Building"
set UbersplatName[12] = "(\"DOMB\") Death Orc Medium Building"
set UbersplatName[13] = "(\"DOLB\") Death Orc Large Building"
set UbersplatName[14] = "(\"DHSB\") Death Human Small Building"
set UbersplatName[15] = "(\"DHMB\") Death Human Medium Building"
set UbersplatName[16] = "(\"DHLB\") Death Human Large Building"
set UbersplatName[17] = "(\"DUSB\") Death Undead Small Building"
set UbersplatName[18] = "(\"DUMB\") Death Undead Medium Building"
set UbersplatName[19] = "(\"DULB\") Death Undead Large Building"
set UbersplatName[20] = "(\"DNSB\") Death NightElf Small Building"
set UbersplatName[21] = "(\"DNMB\") Death NightElf Medium Building"
set UbersplatName[22] = "(\"DNSA\") Death NightElf Small Ancient"
set UbersplatName[23] = "(\"DNMA\") Death NightElf Medium Ancient"
set UbersplatName[24] = "(\"HSMA\") Human Small Building"
set UbersplatName[25] = "(\"HMED\") Human Medium Building"
set UbersplatName[26] = "(\"HLAR\") Human Large Building"
set UbersplatName[27] = "(\"OSMA\") Orc Small Building"
set UbersplatName[28] = "(\"OMED\") Orc Medium Building"
set UbersplatName[29] = "(\"OLAR\") Orc Large Building"
set UbersplatName[30] = "(\"USMA\") Undead Small Building"
set UbersplatName[31] = "(\"UMED\") Undead Medium Building"
set UbersplatName[32] = "(\"ULAR\") Undead Large Building"
set UbersplatName[33] = "(\"ESMA\") NightElf Small Ancient"
set UbersplatName[34] = "(\"EMDA\") NightElf Medium Ancient"
set UbersplatName[35] = "(\"ESMB\") NightElf Small Building"
set UbersplatName[36] = "(\"EMDB\") NightElf Medium Building"
set UbersplatName[37] = "(\"HTOW\") Town Hall"
set UbersplatName[38] = "(\"HCAS\") Castle"
set UbersplatName[39] = "(\"NGOL\") Goldmine"
set UbersplatName[40] = "(\"THND\") Thunder Clap"
set UbersplatName[41] = "(\"NDGS\") Demon Gate"
set UbersplatName[42] = "(\"CLTS\") Thorny Shield"
set UbersplatName[43] = "(\"HFS1\") Human Flame Strike 1"
set UbersplatName[44] = "(\"HFS2\") Human Flame Strike 2"
set UbersplatName[45] = "(\"USBR\") Burrow"
set UbersplatName[46] = "(\"NLAR\") Naga Large Building"
set UbersplatName[47] = "(\"NMED\") Naga Medium Building"
set UbersplatName[48] = "(\"DPSW\") Dark Portal SW"
set UbersplatName[49] = "(\"DPSE\") Dark Portal SE"
set UbersplatName[50] = "(\"NVOL\") Volcano"
set UbersplatName[51] = "(\"NVCR\") Volcano Crater"
// --------------------------------------------
// Ubersplat Index Changer
set UbersplatChoice[1] = "LSDS"
set UbersplatChoice[2] = "LSDM"
set UbersplatChoice[3] = "LSDL"
set UbersplatChoice[4] = "HCRT"
set UbersplatChoice[5] = "UDSU"
set UbersplatChoice[6] = "DNCS"
set UbersplatChoice[7] = "HMTP"
set UbersplatChoice[8] = "SCTP"
set UbersplatChoice[9] = "AMRC"
set UbersplatChoice[10] = "DRKC"
set UbersplatChoice[11] = "DOSB"
set UbersplatChoice[12] = "DOMB"
set UbersplatChoice[13] = "DOLB"
set UbersplatChoice[14] = "DHSB"
set UbersplatChoice[15] = "DHMB"
set UbersplatChoice[16] = "DHLB"
set UbersplatChoice[17] = "DUSB"
set UbersplatChoice[18] = "DUMB"
set UbersplatChoice[19] = "DULB"
set UbersplatChoice[20] = "DNSB"
set UbersplatChoice[21] = "DNMB"
set UbersplatChoice[22] = "DNSA"
set UbersplatChoice[23] = "DNMA"
set UbersplatChoice[24] = "HSMA"
set UbersplatChoice[25] = "HMED"
set UbersplatChoice[26] = "HLAR"
set UbersplatChoice[27] = "OSMA"
set UbersplatChoice[28] = "OMED"
set UbersplatChoice[29] = "OLAR"
set UbersplatChoice[30] = "USMA"
set UbersplatChoice[31] = "UMED"
set UbersplatChoice[32] = "ULAR"
set UbersplatChoice[33] = "ESMA"
set UbersplatChoice[34] = "EMDA"
set UbersplatChoice[35] = "ESMB"
set UbersplatChoice[36] = "EMDB"
set UbersplatChoice[37] = "HTOW"
set UbersplatChoice[38] = "HCAS"
set UbersplatChoice[39] = "NGOL"
set UbersplatChoice[40] = "THND"
set UbersplatChoice[41] = "NDGS"
set UbersplatChoice[42] = "CLTS"
set UbersplatChoice[43] = "HFS1"
set UbersplatChoice[44] = "HFS2"
set UbersplatChoice[45] = "USBR"
set UbersplatChoice[46] = "NLAR"
set UbersplatChoice[47] = "NMED"
set UbersplatChoice[48] = "DPSW"
set UbersplatChoice[49] = "DPSE"
set UbersplatChoice[50] = "NVOL"
set UbersplatChoice[51] = "NVCR"
// Ubersplat Max and Min Index
set MinIndex[1] = 0
set MaxIndex[1] = 51
// --------------------------------------------
// Lightning Name Changer
set Index[2] = 0
set LightningName[0] = "None"
set LightningName[1] = "(\"CLPB\") Chain Lightning - Primary"
set LightningName[2] = "(\"CLSB\") Chain Lightning - Secondary"
set LightningName[3] = "(\"DRAB\") Drain"
set LightningName[4] = "(\"DRAL\") Drain Life"
set LightningName[5] = "(\"DRAM\") Drain Mana"
set LightningName[6] = "(\"AFOD\") Finger of Death"
set LightningName[7] = "(\"FORK\") Forked Lightning"
set LightningName[8] = "(\"HWPB\") Healing Wave - Primary"
set LightningName[9] = "(\"HWSB\") Healing Wave - Secondary"
set LightningName[10] = "(\"CHIM\") Lightning Attack"
set LightningName[11] = "(\"LEAS\") Magic Leash"
set LightningName[12] = "(\"MBUR\") Mana Burn"
set LightningName[13] = "(\"MFPB\") Mana Flare"
set LightningName[14] = "(\"SPLK\") Spirit Link"
// --------------------------------------------
// Lightning Index Changer
set LightningChoice[1] = "CLPB"
set LightningChoice[2] = "CLSB"
set LightningChoice[3] = "DRAB"
set LightningChoice[4] = "DRAL"
set LightningChoice[5] = "DRAM"
set LightningChoice[6] = "AFOD"
set LightningChoice[7] = "FORK"
set LightningChoice[8] = "HWPB"
set LightningChoice[9] = "HWSB"
set LightningChoice[10] = "CHIM"
set LightningChoice[11] = "LEAS"
set LightningChoice[12] = "MBUR"
set LightningChoice[13] = "MFPB"
set LightningChoice[14] = "SPLK"
// Lightning Max and Min Index
set MinIndex[2] = 0
set MaxIndex[2] = 14
// --------------------------------------------
// Fade Filter Name Changer
set Index[3] = 0
set FadeName[0] = "None"
set FadeName[1] = "White Mask"
set FadeName[2] = "Black Mask"
set FadeName[3] = "Haze Filter"
set FadeName[4] = "Ground Fog"
set FadeName[5] = "Haze And Fog"
set FadeName[6] = "Diagonal Slash"
set FadeName[7] = "Dream"
set FadeName[8] = "Scope"
set FadeName[9] = "Pow!"
set FadeName[10] = "Splatt!"
set FadeName[11] = "Panda-n-Cub"
// --------------------------------------------
// Fade Filter Index Changer
set FadeChoice[1] = "ReplaceableTextures\\CameraMasks\\White_mask.blp"
set FadeChoice[2] = "ReplaceableTextures\\CameraMasks\\Black_mask.blp"
set FadeChoice[3] = "ReplaceableTextures\\CameraMasks\\HazeFilter_mask.blp"
set FadeChoice[4] = "ReplaceableTextures\\CameraMasks\\GroundFog_mask.blp"
set FadeChoice[5] = "ReplaceableTextures\\CameraMasks\\HazeAndFogFilter_Mask.blp"
set FadeChoice[6] = "ReplaceableTextures\\CameraMasks\\DiagonalSlash_mask.blp"
set FadeChoice[7] = "ReplaceableTextures\\CameraMasks\\DreamFilter_Mask.blp"
set FadeChoice[8] = "ReplaceableTextures\\CameraMasks\\Scope_Mask.blp"
set FadeChoice[9] = "ReplaceableTextures\\CameraMasks\\SpecialPowMask.blp"
set FadeChoice[10] = "ReplaceableTextures\\CameraMasks\\SpecialSplatMask.blp"
set FadeChoice[11] = "ReplaceableTextures\\CameraMasks\\Panda-n-Cub.blp"
// Fade Filter Max and Min Index
set MinIndex[3] = 0
set MaxIndex[3] = 11
// --------------------------------------------
// Sky Name Changer
set Index[4] = 0
set SkyName[0] = "None"
set SkyName[1] = "Blizzard Sky"
set SkyName[2] = "Dalaran Sky"
set SkyName[3] = "Felwood Sky"
set SkyName[4] = "Fogged Sky"
set SkyName[5] = "Generic Sky"
set SkyName[6] = "Lordaeron Fall Sky"
set SkyName[7] = "Lordaeron Summer Sky"
set SkyName[8] = "Lordaeron Winter Sky"
set SkyName[9] = "Lordaeron Winter Sky (Bright Green)"
set SkyName[10] = "Lordaeron Winter Sky (Pink)"
set SkyName[11] = "Lordaeron Winter Sky (Purple)"
set SkyName[12] = "Lordaeron Winter Sky (Red)"
set SkyName[13] = "Lordaeron Winter Sky (Yellow)"
set SkyName[14] = "Outland Sky"
// --------------------------------------------
// Sky Index Changer
set SkyChoice[1] = "Environment\\Sky\\BlizzardSky\\BlizzardSky.mdl"
set SkyChoice[2] = "Environment\\Sky\\DalaranSky\\DalaranSky.mdl"
set SkyChoice[3] = "Environment\\Sky\\FelwoodSky\\FelwoodSky.mdl"
set SkyChoice[4] = "Environment\\Sky\\FoggedSky\\FoggedSky.mdl"
set SkyChoice[5] = "Environment\\Sky\\Sky\\SkyLight.mdl"
set SkyChoice[6] = "Environment\\Sky\\LordaeronFallSky\\LordaeronFallSky.mdl"
set SkyChoice[7] = "Environment\\Sky\\LordaeronSummerSky\\LordaeronSummerSky.mdl"
set SkyChoice[8] = "Environment\\Sky\\LordaeronWinterSky\\LordaeronWinterSky.mdl"
set SkyChoice[9] = "Environment\\Sky\\LordaeronWinterSkyBrightGreen\\LordaeronWinterSkyBrightGreen.mdl"
set SkyChoice[10] = "Environment\\Sky\\LordaeronWinterSkyPink\\LordaeronWinterSkyPink.mdl"
set SkyChoice[11] = "Environment\\Sky\\LordaeronWinterSkyPurple\\LordaeronWinterSkyPurple.mdl"
set SkyChoice[12] = "Environment\\Sky\\LordaeronWinterSkyRed\\LordaeronWinterSkyRed.mdl"
set SkyChoice[13] = "Environment\\Sky\\LordaeronWinterSkyYellow\\LordaeronWinterSkyYellow.mdl"
set SkyChoice[14] = "Environment\\Sky\\Outland_Sky\\Outland_Sky.mdl"
// Sky Max and Min Index
set MinIndex[4] = 0
set MaxIndex[4] = 14
// --------------------------------------------
// Weather Name Changer
set Index[5] = 0
set WeatherName[0] = "None"
set WeatherName[1] = "('RAhr') Ashenvale Rain (Heavy)"
set WeatherName[2] = "('RAlr') Ashenvale Rain (Light)"
set WeatherName[3] = "('MEds') Dalaran Shield"
set WeatherName[4] = "('FDbh') Dungeon Blue Fog (Heavy)"
set WeatherName[5] = "('FDbl') Dungeon Blue Fog (Light)"
set WeatherName[6] = "('FDgh') Dungeon Green Fog (Heavy)"
set WeatherName[7] = "('FDgl') Dungeon Green Fog (Light)"
set WeatherName[8] = "('FDrh') Dungeon Red Fog (Heavy)"
set WeatherName[9] = "('FDrl') Dungeon Red Fog (Light)"
set WeatherName[10] = "('FDwh') Dungeon White Fog (Heavy)"
set WeatherName[11] = "('FDwl') Dungeon White Fog (Light)"
set WeatherName[12] = "('RLhr') Lordaeron Rain (Heavy)"
set WeatherName[13] = "('RLlr') Lordaeron Rain (Light)"
set WeatherName[14] = "('SNbs') Northrend Blizzard"
set WeatherName[15] = "('SNhs') Northrend Snow (Heavy)"
set WeatherName[16] = "('SNls') Northrend Snow (Light)"
set WeatherName[17] = "('WOcw') Outland Wind (Heavy)"
set WeatherName[18] = "('WOlw') Outland Wind (Light)"
set WeatherName[19] = "('LRaa') Rays Of Light"
set WeatherName[20] = "('LRma') Rays Of Moonlight"
set WeatherName[21] = "('WNcw') Wind (Heavy)"
// --------------------------------------------
// Weather Index Changer
set WeatherChoice[1]='RAhr'
set WeatherChoice[2]='RAlr'
set WeatherChoice[3]='MEds'
set WeatherChoice[4]='FDbh'
set WeatherChoice[5]='FDbl'
set WeatherChoice[6]='FDgh'
set WeatherChoice[7]='FDgl'
set WeatherChoice[8]='FDrh'
set WeatherChoice[9]='FDrl'
set WeatherChoice[10]='FDwh'
set WeatherChoice[11]='FDwl'
set WeatherChoice[12]='RLhr'
set WeatherChoice[13]='RLlr'
set WeatherChoice[14]='SNbs'
set WeatherChoice[15]='SNhs'
set WeatherChoice[16]='SNls'
set WeatherChoice[17]='WOcw'
set WeatherChoice[18]='WOlw'
set WeatherChoice[19]='LRaa'
set WeatherChoice[20]='LRma'
set WeatherChoice[21]='WNcw'
// Weather Max and Min Index
set MinIndex[5] = 0
set MaxIndex[5] = 21
// --------------------------------------------
// Animation Name Changer
set Index[6] = 0
set AnimationName[0] = "Stand - 1"
set AnimationName[1] = "Stand - 2"
set AnimationName[2] = "Stand - 3"
set AnimationName[3] = "Stand - 4"
set AnimationName[4] = "Attack - 1"
set AnimationName[5] = "Stand Work - 1"
set AnimationName[6] = "Walk"
set AnimationName[7] = "Death - 1"
set AnimationName[8] = "Decay Flesh"
set AnimationName[9] = "Decay Bone"
set AnimationName[10] = "Stand Ready"
set AnimationName[11] = "Stand Flesh First"
set AnimationName[12] = "Stand Flesh Second"
set AnimationName[13] = "Attack Morph - 1"
set AnimationName[14] = "Attack Morph - 2"
set AnimationName[15] = "Attack Morph - 3"
set AnimationName[16] = "Attack Morph - 4"
set AnimationName[17] = "Attack Morph - 5"
set AnimationName[18] = "Attack Morph - 6"
set AnimationName[19] = "Attack Morph - 7"
set AnimationName[20] = "Attack Morph - 8"
set AnimationName[21] = "Attack Morph - 9"
set AnimationName[22] = "Attack Morph - 10"
set AnimationName[23] = "Attack Morph - 11"
set AnimationName[24] = "Attack Morph - 12"
set AnimationName[25] = "Attack Morph - 13"
set AnimationName[26] = "Attack Morph - 14"
set AnimationName[27] = "Attack Morph - 15"
set AnimationName[28] = "Attack Morph - 16"
set AnimationName[29] = "Attack Morph - 17"
set AnimationName[30] = "Attack Morph - 18"
set AnimationName[31] = "Attack Morph - 19"
set AnimationName[32] = "Attack Morph - 20"
set AnimationName[33] = "Attack Morph - 21"
set AnimationName[34] = "Attack Morph - 22"
set AnimationName[35] = "Attack Morph - 23"
set AnimationName[36] = "Attack Morph - 24"
set AnimationName[37] = "Attack Morph - 25"
set AnimationName[38] = "Attack Morph - 26"
set AnimationName[39] = "Attack Morph - 27"
set AnimationName[40] = "Attack Morph - 28"
set AnimationName[41] = "Attack Morph - 29"
set AnimationName[42] = "Attack Morph - 30"
set AnimationName[43] = "Attack - 2"
set AnimationName[44] = "Attack - 3"
set AnimationName[45] = "Attack - 4"
set AnimationName[46] = "Attack - 5"
set AnimationName[47] = "Attack - 6"
set AnimationName[48] = "Attack - 7"
set AnimationName[49] = "Attack - 8"
set AnimationName[50] = "Attack - 9"
set AnimationName[51] = "Attack - 10"
set AnimationName[52] = "Attack - 11"
set AnimationName[53] = "Attack - 12"
set AnimationName[54] = "Attack - 13"
set AnimationName[55] = "Attack - 14"
set AnimationName[56] = "Attack - 15"
set AnimationName[57] = "Attack Alternate - 1"
set AnimationName[58] = "Attack Alternate - 2"
set AnimationName[59] = "Attack Alternate - 3"
set AnimationName[60] = "Attack Alternate - 4"
set AnimationName[61] = "Attack Alternate - 5"
set AnimationName[62] = "Attack Alternate - 6"
set AnimationName[63] = "Attack Alternate - 7"
set AnimationName[64] = "Attack Alternate - 8"
set AnimationName[65] = "Attack Alternate - 9"
set AnimationName[66] = "Stand Hit - 1"
set AnimationName[67] = "Stand Hit - 2"
set AnimationName[68] = "Stand Hit - 3"
set AnimationName[69] = "Stand Hit - 4"
set AnimationName[70] = "Stand Hit - 5"
set AnimationName[71] = "Stand Hit - 6"
set AnimationName[72] = "Stand Hit - 7"
set AnimationName[73] = "Stand Hit - 8"
set AnimationName[74] = "Stand Hit - 9"
set AnimationName[75] = "Stand Hit - 10"
set AnimationName[76] = "Stand Hit - 11"
set AnimationName[77] = "Stand Hit - 12"
set AnimationName[78] = "Stand Hit - 13"
set AnimationName[79] = "Stand Victory - 1"
set AnimationName[80] = "Stand Victory - 2"
set AnimationName[81] = "Stand Victory - 3"
set AnimationName[82] = "Stand Victory - 4"
set AnimationName[83] = "Stand Victory - 5"
set AnimationName[84] = "Stand Victory - 6"
set AnimationName[85] = "Stand Victory - 7"
set AnimationName[86] = "Stand Victory - 9"
set AnimationName[87] = "Stand Victory - 10"
set AnimationName[88] = "Stand Victory - 11"
set AnimationName[89] = "Stand Victory - 12"
set AnimationName[90] = "Stand Victory - 13"
set AnimationName[91] = "Walk Gold"
set AnimationName[92] = "Stand Gold"
set AnimationName[93] = "Attack Gold - 1"
set AnimationName[94] = "Attack Gold - 2"
set AnimationName[95] = "Walk Lumber"
set AnimationName[96] = "Stand Lumber"
set AnimationName[97] = "Attack Lumber - 1"
set AnimationName[98] = "Stand Victory - 14"
set AnimationName[99] = "Stand Victory - 15"
set AnimationName[100] = "Stand Victory - 16"
set AnimationName[101] = "Stand Victory - 17"
set AnimationName[102] = "Attack Lumber - 2"
set AnimationName[103] = "Stand Victory - 18"
set AnimationName[104] = "Stand Victory - 19"
set AnimationName[105] = "Stand Victory - 20"
set AnimationName[106] = "Stand Victory - 21"
set AnimationName[107] = "Stand Defend - 1"
set AnimationName[108] = "Stand Defend - 2"
set AnimationName[109] = "Stand Defend - 3"
set AnimationName[110] = "Stand Defend - 4"
set AnimationName[111] = "Stand Defend - 5"
set AnimationName[112] = "Walk Defend"
set AnimationName[113] = "Attack Defend - 1"
set AnimationName[114] = "Attack Defend - 2"
set AnimationName[115] = "Stand Victory - 22"
set AnimationName[116] = "Stand Victory - 23"
set AnimationName[117] = "Stand Work - 2"
set AnimationName[118] = "Attack Throw - 1"
set AnimationName[119] = "Attack Throw - 2"
set AnimationName[120] = "Attack Throw - 3"
set AnimationName[121] = "Attack Throw - 4"
set AnimationName[122] = "Attack Throw - 5"
set AnimationName[123] = "Attack Throw - 6"
set AnimationName[124] = "Attack Throw - 7"
set AnimationName[125] = "Stand Victory - 24"
set AnimationName[126] = "Stand Victory - 25"
set AnimationName[127] = "Stand Victory - 26"
set AnimationName[128] = "Stand Victory - 27"
set AnimationName[129] = "Stand Victory - 28"
set AnimationName[130] = "Stand Victory - 29"
set AnimationName[131] = "Stand Victory - 30"
set AnimationName[132] = "Stand Victory - 31"
set AnimationName[133] = "Stand Victory - 32"
set AnimationName[134] = "Stand Victory - 33"
set AnimationName[135] = "Stand Victory - 34"
set AnimationName[136] = "Stand Victory - 35"
set AnimationName[137] = "Stand Victory - 36"
set AnimationName[138] = "Stand Victory - 37"
set AnimationName[139] = "Stand Victory - 38"
set AnimationName[140] = "Stand Victory - 39"
set AnimationName[141] = "Stand Victory - 40"
set AnimationName[142] = "Walk Upgrade"
set AnimationName[143] = "Stand Upgrade"
set AnimationName[144] = "Attack Upgrade - 1"
set AnimationName[145] = "Attack Upgrade - 2"
set AnimationName[146] = "Attack Upgrade - 3"
set AnimationName[147] = "Attack Upgrade - 4"
set AnimationName[148] = "Death Upgrade"
set AnimationName[149] = "Stand Victory - 41"
set AnimationName[150] = "Stand Victory - 42"
set AnimationName[151] = "Stand Victory - 43"
set AnimationName[152] = "Stand Victory - 44"
set AnimationName[153] = "Stand Victory - 45"
set AnimationName[154] = "Stand Victory - 46"
set AnimationName[155] = "Stand Victory - 47"
set AnimationName[156] = "Stand Victory - 48"
set AnimationName[157] = "Stand Victory - 49"
set AnimationName[158] = "Stand Victory - 50"
set AnimationName[159] = "Stand Victory - 51"
set AnimationName[160] = "Stand Victory - 52"
set AnimationName[161] = "Stand Victory - 53"
set AnimationName[162] = "Stand Victory - 54"
set AnimationName[163] = "Stand Victory - 55"
set AnimationName[164] = "Stand Victory - 56"
set AnimationName[165] = "Stand Victory - 57"
set AnimationName[166] = "Stand Victory - 58"
set AnimationName[167] = "Stand Victory - 59"
set AnimationName[168] = "Stand Victory - 60"
set AnimationName[169] = "Stand Victory - 61"
set AnimationName[170] = "Stand Victory - 62"
set AnimationName[171] = "Stand Victory - 63"
set AnimationName[172] = "Stand Victory - 64"
set AnimationName[173] = "Stand Victory - 65"
set AnimationName[174] = "Stand Victory - 66"
set AnimationName[175] = "Stand Victory - 67"
set AnimationName[176] = "Stand Victory - 68"
set AnimationName[177] = "Stand Victory - 69"
set AnimationName[178] = "Stand Victory - 70"
set AnimationName[179] = "Stand Victory - 71"
set AnimationName[180] = "Stand Victory - 72"
set AnimationName[181] = "Stand Victory - 73"
set AnimationName[182] = "Stand Victory - 74"
set AnimationName[183] = "Stand Victory - 75"
set AnimationName[184] = "Stand Victory - 76"
set AnimationName[185] = "Death - 2"
set AnimationName[186] = "Death - 3"
set AnimationName[187] = "Flesh - 1"
set AnimationName[188] = "Walk Victory - 1"
set AnimationName[189] = "Walk Victory - 2"
set AnimationName[190] = "Death - 4"
set AnimationName[191] = "Stand Victory - 77"
set AnimationName[192] = "Stand Victory - 78"
set AnimationName[193] = "Stand Victory - 79"
set AnimationName[194] = "Stand Victory - 80"
set AnimationName[195] = "Stand Victory - 81"
set AnimationName[196] = "Stand Victory - 82"
set AnimationName[197] = "Stand Victory - 83"
set AnimationName[198] = "Stand Victory - 84"
set AnimationName[199] = "Stand Victory - 85"
set AnimationName[200] = "Stand Victory - 86"
set AnimationName[201] = "Walk Victory - 3"
set AnimationName[202] = "Stand Victory - 87"
set AnimationName[203] = "Stand Victory - 88"
set AnimationName[204] = "Stand Victory - 89"
set AnimationName[205] = "Stand Victory - 90"
set AnimationName[206] = "Stand Victory - 91"
set AnimationName[207] = "Stand Victory - 92"
set AnimationName[208] = "Stand Victory - 93"
set AnimationName[209] = "Flesh - 2"
set AnimationName[210] = "Flesh - 3"
set AnimationName[211] = "Flesh - 4"
set AnimationName[212] = "Flesh - 5"
set AnimationName[213] = "Flesh - 6"
set AnimationName[214] = "Flesh - 7"
set AnimationName[215] = "Flesh - 8"
set AnimationName[216] = "Flesh - 9"
set AnimationName[217] = "Flesh - 10"
set AnimationName[218] = "Flesh - 11"
set AnimationName[219] = "Stand Flesh - 1"
set AnimationName[220] = "Walk Flesh - 1"
set AnimationName[221] = "Death Flesh - 1"
set AnimationName[222] = "Attack Flesh - 1"
set AnimationName[223] = "Attack Flesh - 2"
set AnimationName[224] = "Stand Spin First - 1"
set AnimationName[225] = "Attack Spin First - 1"
set AnimationName[226] = "Attack Spin First - 2"
set AnimationName[227] = "Attack Spin First - 3"
set AnimationName[228] = "Attack Spin First - 4"
set AnimationName[229] = "Attack Spin First Spell - 1"
set AnimationName[230] = "Attack Spin First Spell - 2"
set AnimationName[231] = "Attack Spin First Spell Slam - 1"
set AnimationName[232] = "Walk Spin Second - 1"
set AnimationName[233] = "Stand Spin Second - 1"
set AnimationName[234] = "Stand Spin Morph First - 1"
set AnimationName[235] = "Stand Spin Morph Second - 1"
set AnimationName[236] = "Attack Spin Second - 1"
set AnimationName[237] = "Attack Spin Second - 2"
set AnimationName[238] = "Attack Second Spell Slam - 1"
set AnimationName[239] = "Death Spin Second"
set AnimationName[240] = "Stand Victory - 94"
set AnimationName[241] = "Stand Victory - 95"
set AnimationName[242] = "Stand Victory - 96"
set AnimationName[243] = "Stand Victory - 97"
set AnimationName[244] = "Stand Victory - 98"
set AnimationName[245] = "Walk Victory - 4"
set AnimationName[246] = "Stand Victory - 99"
set AnimationName[247] = "Stand Victory - 100"
set AnimationName[248] = "Stand Victory - 101"
set AnimationName[249] = "Stand Victory - 102"
set AnimationName[250] = "Stand Victory - 103"
set AnimationName[251] = "Stand Victory - 104"
set AnimationName[252] = "Stand Victory - 105"
set AnimationName[253] = "Stand Victory - 106"
set AnimationName[254] = "Stand Victory - 107"
// This is to set up the Maximum and Minimum Animation Index Range.
set MinIndex[6] = 0
set MaxIndex[6] = 254
// --------------------------------------------
endfunction
private function Init takes nothing returns nothing
local trigger t = CreateTrigger( )
call TriggerRegisterTimerEvent( t, 0.01, false)
call TriggerAddAction( t, function InitActionsFirst )
set t = null
endfunction
endlibrary
scope SecondInitialization initializer Init
private function InitActionsSecond takes nothing returns nothing
// Creating local variables
local quest q
local integer i = 0
local integer ie = 15
// --------------------------------------------
// Animation Name Changer
set Index[7] = 0
set AnimationNameA[0] = "Stand"
set AnimationNameA[1] = "Stand - 2"
set AnimationNameA[2] = "Stand - 3"
set AnimationNameA[3] = "Stand - 4"
set AnimationNameA[4] = "Attack"
set AnimationNameA[5] = "Stand Work"
set AnimationNameA[6] = "Walk"
set AnimationNameA[7] = "Death"
set AnimationNameA[8] = "Decay Flesh"
set AnimationNameA[9] = "Decay Bone"
set AnimationNameA[10] = "Stand Ready"
set AnimationNameA[11] = "Stand Flesh First"
set AnimationNameA[12] = "Stand Flesh Second"
// This is to set up the Maximum and Minimum Animation Index Range.
set MinIndex[7] = 0
set MaxIndex[7] = 12
// --------------------------------------------
// Helmet Name Changer
set Index[8] = 0
set HelmetName[0] = "None"
set HelmetName[1] = "Bronze Helmet"
set HelmetName[2] = "Metal Helmet"
set HelmetName[3] = "Bone Helmet"
// --------------------------------------------
// Helmet Choice Changer
set HelmetChoice[1] = "war3mapImported\\Bronze Helmet.mdx"
set HelmetChoice[2] = "war3mapImported\\White_Helm_Tier3_Portrait.mdx"
set HelmetChoice[3] = "war3mapImported\\BoneHelmet.mdx"
// This is to set up the Maximum and Minimum Index Range.
set MinIndex[8] = 0
set MaxIndex[8] = 3
// --------------------------------------------
// Chest Name Changer
set Index[9] = 0
set ChestName[0] = "None"
set ChestName[1] = "Bronze Chestplate"
set ChestName[2] = "Metal Heavy Armor"
set ChestName[3] = "Bone Armor"
// --------------------------------------------
// Chest Choice Changer
set ChestChoice[1] = "war3mapImported\\Bronze Chestplate.mdx"
set ChestChoice[2] = "war3mapImported\\White_HeavyArmour_Tier3_Portrait.mdx"
set ChestChoice[3] = "war3mapImported\\BoneArmorWhite2.mdx"
// This is to set up the Maximum and Minimum Index Range.
set MinIndex[9] = 0
set MaxIndex[9] = 3
// --------------------------------------------
// Sword Name Changer
set Index[10] = 0
set SwordName[0] = "None"
set SwordName[1] = "Bronze Broadsword"
set SwordName[2] = "Ripper Sword"
set SwordName[3] = "Bone Axe"
// --------------------------------------------
// Sword Choice Changer
set SwordChoice[1] = "war3mapImported\\Bronze Broadsword.mdx"
set SwordChoice[2] = "war3mapImported\\Ripper Sword.mdx"
set SwordChoice[3] = "war3mapImported\\boneaxe9.mdx"
// This is to set up the Maximum and Minimum Index Range.
set MinIndex[10] = 0
set MaxIndex[10] = 3
// --------------------------------------------
// Shield Name Changer
set Index[11] = 0
set ShieldName[0] = "None"
set ShieldName[1] = "Bronze Buckler"
set ShieldName[2] = "Metal Shield"
set ShieldName[3] = "Bone Spiked Shield"
// --------------------------------------------
// Shield Choice Changer
set ShieldChoice[1] = "war3mapImported\\Bronze Buckler.mdx"
set ShieldChoice[2] = "war3mapImported\\Metal_Shield_Tier3_Portrait.mdx"
set ShieldChoice[3] = "war3mapImported\\bonespikedshield.mdx"
// This is to set up the Maximum and Minimum Index Range.
set MinIndex[11] = 0
set MaxIndex[11] = 3
// --------------------------------------------
// Boots Name Changer
set Index[12] = 0
set BootsName[0] = "None"
set BootsName[1] = "Bronze Boots"
set BootsName[2] = "Metal Boots"
set BootsName[3] = "N/A"
// --------------------------------------------
// Boots Choice Changer
set BootsChoiceLeft[1] = "war3mapImported\\Bronze Boots - Left.mdx"
set BootsChoiceRight[1] = "war3mapImported\\Bronze Boots.mdx"
set BootsChoiceLeft[2] = "war3mapImported\\MetalBoots_T3_byAstarothZion_LeftFoot.mdx"
set BootsChoiceRight[2] = "war3mapImported\\MetalBoots_T3_byAstarothZion.mdx"
set BootsChoiceLeft[3] = ""
set BootsChoiceRight[3] = ""
// This is to set up the Maximum and Minimum Index Range.
set MinIndex[12] = 0
set MaxIndex[12] = 3
// --------------------------------------------
// Bracers Name Changer
set Index[13] = 0
set BracersName[0] = "None"
set BracersName[1] = "Bronze Bracers"
set BracersName[2] = "Metal Guantlets"
set BracersName[3] = "N/A"
// --------------------------------------------
// Bracers Choice Changer
set BracersChoiceLeft[1] = "war3mapImported\\Bronze Bracer Left.mdx"
set BracersChoiceRight[1] = "war3mapImported\\Bronze Bracers.mdx"
set BracersChoiceLeft[2] = "war3mapImported\\Guantlet_Metal_Tier3_Portrait.mdx"
set BracersChoiceRight[2] = "war3mapImported\\Guantlet_Metal_Tier3.mdx"
set BracersChoiceLeft[3] = ""
set BracersChoiceRight[3] = ""
// This is to set up the Maximum and Minimum Index Range.
set MinIndex[13] = 0
set MaxIndex[13] = 3
// --------------------------------------------
// Setting the initial camera
set Camera = CreateCameraSetup()
set CamSetting[0] = 325.00
set CamSetting[1] = 1900.00
set CamSetting[2] = 0
set CamSetting[3] = 0
set CamSetting[4] = 200.00
set CamSetting[5] = 10000.00
set CamSetting[6] = 350.00
set CamMode = 0
// --------------------------------------------
// Camera Mode Maker
set CameraModeName[0] = "Normal"
set CameraModeName[1] = "Roll"
set CameraModeName[2] = "Zoom"
// --------------------------------------------
// Do Not Change This
set Actor[0] = CreateUnit(Player(0), 'h001', 130.00, -240.00, 0)
set Actor[1] = CreateUnit(Player(0), 'h000', 1540.00, 2280.00, 0)
call SetUnitFacing(Actor[0], 180.00)
call SetUnitFacing(Actor[1], 180.00)
set ControlPanel[0] = CreateUnit(Player(0), 'H002', 1540.00, 2280.00, 0)
set ControlPanel[1] = CreateUnit(Player(0), 'H003', 1540.00, 2280.00, 0)
set ControlPanel[2] = CreateUnit(Player(0), 'H004', 1540.00, 2280.00, 0)
set ControlPanel[3] = CreateUnit(Player(0), 'H005', 1540.00, 2280.00, 0)
call SetCameraTargetController(Actor[0], 0, 0, false)
call ClearSelection()
call SelectUnit(ControlPanel[0], true)
set XofActor = GetUnitX(Actor[0])
set YofActor = GetUnitY(Actor[0])
set NewYofActor = YofActor - 350.00
set FinalYofActor = YofActor + 350.00
set TerrainType = GetTerrainType(XofActor, YofActor)
set NewTerrainType = GetTerrainType(XofActor, FinalYofActor)
set SystemInUse = 0
set ShowBoard = true
set LoopingCommand = false
set ArrowKey[0] = false
set ArrowKey[1] = false
set ArrowKey[2] = false
set ArrowKey[3] = false
// --------------------------------------------
// Camera Setup and Display
call CameraSetupSetField(Camera,CAMERA_FIELD_ANGLE_OF_ATTACK,CamSetting[0],0)
call CameraSetupSetField(Camera,CAMERA_FIELD_TARGET_DISTANCE,CamSetting[1],0)
call CameraSetupSetField(Camera,CAMERA_FIELD_ROLL,CamSetting[2],0)
call CameraSetupSetField(Camera,CAMERA_FIELD_ROTATION,CamSetting[3],0)
call CameraSetupSetField(Camera,CAMERA_FIELD_ZOFFSET,CamSetting[4],0)
call CameraSetupSetField(Camera,CAMERA_FIELD_FARZ,CamSetting[5],0)
call CameraSetupSetField(Camera,CAMERA_FIELD_FIELD_OF_VIEW,CamSetting[6],0)
set Line[0] = "---------- C a m e r a ----------"
set Line[1] = ( "Camera Mode : " + "Normal" )
set Line[2] = ( "Distance : " + R2S(CamSetting[1]) )
set Line[3] = ( "Angle of Attack : " + R2S(CamSetting[0]) )
set Line[4] = ( "Rotation : " + R2S(CamSetting[3]) )
set Line[5] = ( "Cam Height : " + R2S(CamSetting[4]) )
set Line[6] = ( "Roll : " + R2S(CamSetting[2]) )
set Line[7] = "---------- M o d e l s ----------"
set Line[8] = ( "Unit Animations : " + ( ( "(" + ( "0" + ") " ) ) + "Stand - 1" ) )
set Line[9] = ( "Weather Effects : " + ( ( "(" + ( "0" + ") " ) ) + "None" ) )
set Line[10] = ( "Sky Models : " + ( ( "(" + ( "0" + ") " ) ) + "None" ) )
set Line[11] = ( "Fade Filters : " + ( ( "(" + ( "0" + ") " ) ) + "None" ) )
set Line[12] = ( "Lightning Effects : " + ( ( "(" + ( "0" + ") " ) ) + "None" ) )
set Line[13] = ( "Ubersplat Effects : " + ( ( "(" + ( "0" + ") " ) ) + "None" ) )
set Line[14] = ( "Terrain Tiles : " + ( ( "(" + ( "0" + ") " ) ) + "None" ) )
// --------------------------------------------
// Multiboard Setup and Display
set Board = Board.create(ie,1,true,true)
call Board.setTitle("Effects Tester - (Looping is : OFF)")
call Board.setAllWidth(0.28)
call Board.display(false,true)
loop
exitwhen i > ie
call Board.setText(i,0,Line[i])
if i == 0 then
call Board.setIcon(i,0,"ReplaceableTextures\\CommandButtons\\BTN_NormCamera.blp")
elseif i == 7 then
call Board.setIcon(i,0,"ReplaceableTextures\\CommandButtons\\BTNAltarOfKings.blp")
else
call Board.setIcon(i,0,"ReplaceableTextures\\PassiveButtons\\PASBTNStatUp.blp")
endif
set i = i + 1
endloop
// --------------------------------------------
// First optional quest
set q = CreateQuest()
call QuestSetTitle(q, "Effects Tester")
call QuestSetDescription(q, "You can now make animations loop with the following commands;
-loop ### (Loops every x amount of seconds entered), -loop off
You can jump through all of the different numbers by using these commands;
-animation ###, -weather ##, -sky ##, -filter ##, -lightning ##, -ubersplat ##, -terrain #
You can also switch to the attachment tester and back at any time simply by typing;
-attachments, -effects (effects tester being the initial multiboard)")
call QuestSetIconPath(q, "ReplaceableTextures\\CommandButtons\\BTNSell.blp")
call QuestSetRequired(q, false)
call QuestSetDiscovered(q, true)
call QuestSetCompleted(q, false)
// Nulling quest variable
set q = null
// --------------------------------------------
// Second optional quest
set q = CreateQuest()
call QuestSetTitle(q, "Attachments Tester")
call QuestSetDescription(q, "You can now make animations loop with the following commands;
-loop ### (Loops every x amount of seconds entered), -loop off
You can jump through all of the different numbers by using these commands;
-animation #, -helmet #, -chest #, -sword #, -shield #, -boots #, -bracers #
You can also switch to the attachment tester and back at any time simply by typing;
-attachments, -effects (effects tester being the initial multiboard)")
call QuestSetIconPath(q, "ReplaceableTextures\\CommandButtons\\BTNDustOfAppearance.blp")
call QuestSetRequired(q, false)
call QuestSetDiscovered(q, true)
call QuestSetCompleted(q, false)
// Nulling quest variable
set q = null
// --------------------------------------------
// First required quest
set q = CreateQuest()
call QuestSetTitle(q, "Credits")
call QuestSetDescription(q, "-Blood Raven (Bronze Armor Pack)
-InfernalTater (Bone Equipment)
-Astaroth Zion (Attachment Pack)
-IcemanBo (for his help with coding)
-Mckill2009 (BoardEx (multiboard wrapper))
-Graber (for his Villager 255 Animations)
-Supermj (for his White Grid)
-Rysnt11 (for modifying the white grid (added Alpha))
-Razor21 a.k.a gekigengar (for making the map)
-Darkdeathknight (for his camera icon pack)
-CHA_Owner (for greatly improving this system)")
call QuestSetIconPath(q, "ReplaceableTextures\\CommandButtons\\BTNSelectHeroOn.blp")
call QuestSetRequired(q, true)
call QuestSetDiscovered(q, true)
call QuestSetCompleted(q, false)
// Nulling quest variable
set q = null
// --------------------------------------------
// Other settings and setup
call SetUnitAnimationByIndex(Actor[0], Index[6])
call SetFloatGameState(GAME_STATE_TIME_OF_DAY, 12.00)
call SuspendTimeOfDay(true)
set bj_useDawnDuskSounds = false
call FogEnable(false)
call FogMaskEnable(false)
// --------------------------------------------
endfunction
function ResetMultiboard takes nothing returns nothing
if SystemInUse == 0 then
// Reset Animation
set Index[6] = 0
call SetUnitAnimationByIndex(Actor[0], Index[6])
set Line[8] = ( "Unit Animations : " + ( ( "(" + ( "0" + ") " ) ) + "Stand - 1" ) )
call Board.setText(8,0,Line[8])
// --------------------------------------------
// Reset Weather
set Index[5] = 0
call RemoveWeatherEffect( bj_lastCreatedWeatherEffect )
set Line[9] = ( "Weather Effects : " + ( ( "(" + ( "0" + ") " ) ) + "None" ) )
call Board.setText(9,0,Line[9])
// --------------------------------------------
// Reset Sky
set Index[4] = 0
call SetSkyModel( null )
set Line[10] = ( "Sky Models : " + ( ( "(" + ( "0" + ") " ) ) + "None" ) )
call Board.setText(10,0,Line[10])
// --------------------------------------------
// Reset Fade Filter
set Index[3] = 0
if (bj_cineFadeContinueTimer != null) then
call DestroyTimer(bj_cineFadeContinueTimer)
elseif (bj_cineFadeFinishTimer != null) then
call DestroyTimer(bj_cineFadeFinishTimer)
endif
set bj_cineFadeFinishTimer = null
call DisplayCineFilter(false)
set Line[11] = ( "Fade Filters : " + ( ( "(" + ( "0" + ") " ) ) + "None" ) )
call Board.setText(11,0,Line[11])
// --------------------------------------------
// Reset Lightning
set Index[2] = 0
call DestroyLightning( TempLightning )
set Line[12] = ( "Lightning Effects : " + ( ( "(" + ( "0" + ") " ) ) + "None" ) )
call Board.setText(12,0,Line[12])
// --------------------------------------------
// Reset Ubersplat
set Index[1] = 0
call DestroyUbersplat( bj_lastCreatedUbersplat )
set Line[13] = ( "Ubersplat Effects : " + ( ( "(" + ( "0" + ") " ) ) + "None" ) )
call Board.setText(13,0,Line[13])
// --------------------------------------------
// Reset Terrain
set Index[0] = 0
call SetTerrainType(XofActor, NewYofActor, TerrainType, 0, 1, 0)
set Line[14] = ( "Terrain Tiles : " + ( ( "(" + ( "0" + ") " ) ) + "None" ) )
call Board.setText(14,0,Line[14])
// --------------------------------------------
elseif SystemInUse == 1 then
// Reset Animation
set Index[7] = 0
call SetUnitAnimationByIndex(Actor[1], Index[7])
set Line[8] = ( "Unit Animations : " + ( ( "(" + ( "0" + ") " ) ) + "Stand" ) )
call Board.setText(8,0,Line[8])
// --------------------------------------------
// Reset Helmet
set Index[8] = 0
call DestroyEffect(TempEffect[0])
set Line[9] = ( "Helmet Models : " + ( ( "(" + ( "0" + ") " ) ) + "None" ) )
call Board.setText(9,0,Line[9])
// --------------------------------------------
// Reset Chest
set Index[9] = 0
call DestroyEffect(TempEffect[1])
set Line[10] = ( "Chest Models : " + ( ( "(" + ( "0" + ") " ) ) + "None" ) )
call Board.setText(10,0,Line[10])
// --------------------------------------------
// Reset Sword
set Index[10] = 0
call DestroyEffect(TempEffect[2])
set Line[11] = ( "Sword Models : " + ( ( "(" + ( "0" + ") " ) ) + "None" ) )
call Board.setText(11,0,Line[11])
// --------------------------------------------
// Reset Shield
set Index[11] = 0
call DestroyEffect(TempEffect[3])
set Line[12] = ( "Shield Models : " + ( ( "(" + ( "0" + ") " ) ) + "None" ) )
call Board.setText(12,0,Line[12])
// --------------------------------------------
// Reset Boots
set Index[12] = 0
call DestroyEffect(TempEffect[4])
call DestroyEffect(TempEffect[5])
set Line[13] = ( "Boot Models : " + ( ( "(" + ( "0" + ") " ) ) + "None" ) )
call Board.setText(13,0,Line[13])
// --------------------------------------------
// Reset Bracers
set Index[13] = 0
call DestroyEffect(TempEffect[6])
call DestroyEffect(TempEffect[7])
set Line[14] = ( "Bracer Models : " + ( ( "(" + ( "0" + ") " ) ) + "None" ) )
call Board.setText(14,0,Line[14])
// --------------------------------------------
endif
endfunction
private function FinishFade takes nothing returns nothing
set bj_cineFadeFinishTimer = null
call DisplayCineFilter(false)
endfunction
// call RunFade( fade out/in, texture )
function RunFade takes integer f, string s returns nothing
if (bj_cineFadeContinueTimer != null) then
call DestroyTimer(bj_cineFadeContinueTimer)
elseif (bj_cineFadeFinishTimer != null) then
call DestroyTimer(bj_cineFadeFinishTimer)
endif
if (f == bj_CINEFADETYPE_FADEOUT) then
// Fade out to the requested color.
call SetCineFilterTexture(s)
call SetCineFilterBlendMode(BLEND_MODE_BLEND)
call SetCineFilterTexMapFlags(TEXMAP_FLAG_NONE)
call SetCineFilterStartUV(0, 0, 1, 1)
call SetCineFilterEndUV(0, 0, 1, 1)
call SetCineFilterStartColor(255, 255, 255, 0)
call SetCineFilterEndColor(255, 255, 255, 255)
call SetCineFilterDuration(2.00)
call DisplayCineFilter(true)
elseif (f == bj_CINEFADETYPE_FADEIN) then
// Fade in from the requested color.
call SetCineFilterTexture(s)
call SetCineFilterBlendMode(BLEND_MODE_BLEND)
call SetCineFilterTexMapFlags(TEXMAP_FLAG_NONE)
call SetCineFilterStartUV(0, 0, 1, 1)
call SetCineFilterEndUV(0, 0, 1, 1)
call SetCineFilterStartColor(255, 255, 255, 255)
call SetCineFilterEndColor(255, 255, 255, 0)
call SetCineFilterDuration(2.00)
call DisplayCineFilter(true)
set bj_cineFadeFinishTimer = CreateTimer()
call TimerStart(bj_cineFadeFinishTimer, 1.00, false, function FinishFade)
endif
endfunction
private function Init takes nothing returns nothing
local trigger t = CreateTrigger( )
call TriggerRegisterTimerEvent( t, 0.02, false)
call TriggerAddAction( t, function InitActionsSecond )
set t = null
endfunction
endscope
scope CameraSystem initializer Init
private function CameraActions takes nothing returns nothing
// Creating local variables
local integer i = 0
// --------------------------------------------
if ArrowKey[0] == true then
if CamMode == 0 then
set CamSetting[0] = ( CamSetting[0] - 1 )
if CamSetting[0] < 0.00 then
set CamSetting[0] = ( CamSetting[0] + 360.00 )
endif
set Line[3] = ( "Angle of Attack : " + R2S(CamSetting[0]) )
call Board.setText(3,0,Line[3])
elseif CamMode == 1 then
set CamSetting[4] = ( CamSetting[4] + 3.00 )
if CamSetting[4] >= 4000.00 then
set CamSetting[4] = 4000.00
endif
set Line[5] = ( "Cam Height : " + R2S(CamSetting[4]) )
call Board.setText(5,0,Line[5])
elseif CamMode == 2 then
set CamSetting[1] = ( CamSetting[1] - 30.00 )
if CamSetting[1] <= 300.00 then
set CamSetting[1] = 300.00
endif
set Line[2] = ( "Distance : " + R2S(CamSetting[1]) )
call Board.setText(2,0,Line[2])
endif
endif
if ArrowKey[1] == true then
if CamMode == 0 then
set CamSetting[0] = ( CamSetting[0] + 1 )
if CamSetting[0] >= 360.00 then
set CamSetting[0] = ( CamSetting[0] - 360.00 )
endif
set Line[3] = ( "Angle of Attack : " + R2S(CamSetting[0]) )
call Board.setText(3,0,Line[3])
elseif CamMode == 1 then
set CamSetting[4] = ( CamSetting[4] - 3.00 )
if CamSetting[4] <= -2000.00 then
set CamSetting[4] = -2000.00
endif
set Line[5] = ( "Cam Height : " + R2S(CamSetting[4]) )
call Board.setText(5,0,Line[5])
elseif CamMode == 2 then
set CamSetting[1] = ( CamSetting[1] + 30.00 )
if CamSetting[1] >= 3000.00 then
set CamSetting[1] = 3000.00
endif
set Line[2] = ( "Distance : " + R2S(CamSetting[1]) )
call Board.setText(2,0,Line[2])
endif
endif
if ArrowKey[2] == true then
if CamMode == 0 then
set CamSetting[3] = ( CamSetting[3] - 1 )
if CamSetting[3] < 0.00 then
set CamSetting[3] = ( CamSetting[3] + 360.00 )
endif
set Line[4] = ( "Rotation : " + R2S(CamSetting[3]) )
call Board.setText(4,0,Line[4])
elseif CamMode == 1 then
set CamSetting[2] = ( CamSetting[2] - 1 )
if CamSetting[2] < 0.00 then
set CamSetting[2] = ( CamSetting[2] + 360.00 )
endif
set Line[6] = ( "Roll : " + R2S(CamSetting[2]) )
call Board.setText(6,0,Line[6])
elseif CamMode == 2 then
set CamSetting[1] = 300.00
set Line[2] = ( "Distance : " + R2S(CamSetting[1]) )
call Board.setText(2,0,Line[2])
endif
endif
if ArrowKey[3] == true then
if CamMode == 0 then
set CamSetting[3] = ( CamSetting[3] + 1 )
if CamSetting[3] >= 360.00 then
set CamSetting[3] = ( CamSetting[3] - 360.00 )
endif
set Line[4] = ( "Rotation : " + R2S(CamSetting[3]) )
call Board.setText(4,0,Line[4])
elseif CamMode == 1 then
set CamSetting[2] = ( CamSetting[2] + 1 )
if CamSetting[2] >= 360.00 then
set CamSetting[2] = ( CamSetting[2] - 360.00 )
endif
set Line[6] = ( "Roll : " + R2S(CamSetting[2]) )
call Board.setText(6,0,Line[6])
elseif CamMode == 2 then
set CamSetting[1] = 3000.00
set Line[2] = ( "Distance : " + R2S(CamSetting[1]) )
call Board.setText(2,0,Line[2])
endif
endif
call SetCameraField(CAMERA_FIELD_FARZ, CamSetting[5], 0)
call SetCameraField(CAMERA_FIELD_TARGET_DISTANCE, CamSetting[1], 0)
call SetCameraField(CAMERA_FIELD_ANGLE_OF_ATTACK, CamSetting[0], 0)
call SetCameraField(CAMERA_FIELD_ROTATION, CamSetting[3], 0)
call SetCameraField(CAMERA_FIELD_ZOFFSET, CamSetting[4], 0)
call SetCameraField(CAMERA_FIELD_ROLL, CamSetting[2], 0)
loop
exitwhen i > 3
if (GetUnitAbilityLevel(ControlPanel[i], 'BEim') > 0) == true then
set CamSetting[3] = ( CamSetting[3] + 1.00 )
if CamSetting[3] >= 360.00 then
set CamSetting[3] = ( CamSetting[3] - 360.00 )
endif
set Line[4] = ( "Rotation : " + R2S(CamSetting[3]) )
call Board.setText(4,0,Line[4])
endif
set i = i + 1
endloop
endfunction
private function Init takes nothing returns nothing
local trigger t = CreateTrigger( )
call TriggerRegisterTimerEvent( t, 0.03, true)
call TriggerAddAction( t, function CameraActions )
set t = null
endfunction
endscope
scope CameraController initializer Init
private function ControllerActions takes nothing returns nothing
// Creating local variables
local eventid id = GetTriggerEventId()
// --------------------------------------------
// Up Arrow Key Pressed
if id == EVENT_PLAYER_ARROW_UP_DOWN then
set ArrowKey[0] = true
// Up Arrow Key Released
elseif id == EVENT_PLAYER_ARROW_UP_UP then
set ArrowKey[0] = false
// Down Arrow Key Pressed
elseif id == EVENT_PLAYER_ARROW_DOWN_DOWN then
set ArrowKey[1] = true
// Down Arrow Key Released
elseif id == EVENT_PLAYER_ARROW_DOWN_UP then
set ArrowKey[1] = false
// Left Arrow Key Pressed
elseif id == EVENT_PLAYER_ARROW_LEFT_DOWN then
set ArrowKey[2] = true
// Left Arrow Key Released
elseif id == EVENT_PLAYER_ARROW_LEFT_UP then
set ArrowKey[2] = false
// Right Arrow Key Pressed
elseif id == EVENT_PLAYER_ARROW_RIGHT_DOWN then
set ArrowKey[3] = true
// Right Arrow Key Released
elseif id == EVENT_PLAYER_ARROW_RIGHT_UP then
set ArrowKey[3] = false
// Esc Key Used
elseif id == EVENT_PLAYER_END_CINEMATIC then
// Camera Setup and Display
set CamSetting[0] = CameraSetupGetField(Camera, CAMERA_FIELD_ANGLE_OF_ATTACK)
set CamSetting[1] = CameraSetupGetField(Camera, CAMERA_FIELD_TARGET_DISTANCE)
set CamSetting[2] = CameraSetupGetField(Camera, CAMERA_FIELD_ROLL)
set CamSetting[3] = CameraSetupGetField(Camera, CAMERA_FIELD_ROTATION)
set CamSetting[4] = CameraSetupGetField(Camera, CAMERA_FIELD_ZOFFSET)
set CamSetting[5] = CameraSetupGetField(Camera, CAMERA_FIELD_FARZ)
set CamMode = 0
set Line[1] = ( "Camera Mode : " + "Normal" )
set Line[2] = ( "Distance : " + R2S(CamSetting[1]) )
set Line[3] = ( "Angle of Attack : " + R2S(CamSetting[0]) )
set Line[4] = ( "Rotation : " + R2S(CamSetting[3]) )
set Line[5] = ( "Cam Height : " + R2S(CamSetting[4]) )
set Line[6] = ( "Roll : " + R2S(CamSetting[2]) )
call Board.setText(1,0,Line[1])
call Board.setText(2,0,Line[2])
call Board.setText(3,0,Line[3])
call Board.setText(4,0,Line[4])
call Board.setText(5,0,Line[5])
call Board.setText(6,0,Line[6])
// --------------------------------------------
endif
// Nulling the eventid variable
set id = null
endfunction
private function Init takes nothing returns nothing
local trigger t = CreateTrigger( )
call TriggerRegisterPlayerEvent( t, Player(0), EVENT_PLAYER_ARROW_UP_DOWN )
call TriggerRegisterPlayerEvent( t, Player(0), EVENT_PLAYER_ARROW_UP_UP )
call TriggerRegisterPlayerEvent( t, Player(0), EVENT_PLAYER_ARROW_DOWN_DOWN )
call TriggerRegisterPlayerEvent( t, Player(0), EVENT_PLAYER_ARROW_DOWN_UP )
call TriggerRegisterPlayerEvent( t, Player(0), EVENT_PLAYER_ARROW_RIGHT_DOWN )
call TriggerRegisterPlayerEvent( t, Player(0), EVENT_PLAYER_ARROW_RIGHT_UP )
call TriggerRegisterPlayerEvent( t, Player(0), EVENT_PLAYER_ARROW_LEFT_DOWN )
call TriggerRegisterPlayerEvent( t, Player(0), EVENT_PLAYER_ARROW_LEFT_UP )
call TriggerRegisterPlayerEvent( t, Player(0), EVENT_PLAYER_END_CINEMATIC)
call TriggerAddAction( t, function ControllerActions )
set t = null
endfunction
endscope
scope SkippingNumbers initializer Init
private function LoopAnimation takes nothing returns nothing
if SystemInUse == 0 then
call SetUnitAnimationByIndex( Actor[0], Index[6] )
elseif SystemInUse == 1 then
call SetUnitAnimationByIndex( Actor[1], Index[7] )
endif
endfunction
private function SkippingActions takes nothing returns nothing
// Creating local variables
local string s = GetEventPlayerChatString()
local integer a = StringLength(s)
local integer i = 0
local integer ie = 15
// --------------------------------------------
if SubString(s, 0, 11) == "-animation " then
if SystemInUse == 0 then
set Index[6] = S2I(SubString(s, 11, a))
if Index[6] > MaxIndex[6] then
set Index[6] = MinIndex[6]
elseif Index[6] < MinIndex[6] then
set Index[6] = MaxIndex[6]
endif
set Line[8] = ( "Unit Animations : " + ( ( "(" + ( I2S(Index[6]) + ") " ) ) + AnimationName[Index[6]] ) )
call SetUnitAnimationByIndex(Actor[0], Index[6])
call Board.setText(8,0,Line[8])
else
set Index[7] = S2I(SubString(s, 11, a))
if Index[7] > MaxIndex[7] then
set Index[7] = MinIndex[7]
elseif Index[7] < MinIndex[7] then
set Index[7] = MaxIndex[7]
endif
set Line[8] = ( "Unit Animations : " + ( ( "(" + ( I2S(Index[7]) + ") " ) ) + AnimationNameA[Index[7]] ) )
call SetUnitAnimationByIndex(Actor[1], Index[7])
call Board.setText(8,0,Line[8])
endif
elseif SubString( s, 0, 6) == "-loop " and LoopingCommand == false then
set LoopingCommand = true
if SystemInUse == 0 then
call Board.setTitle("Effects Tester - (Looping is : ON)")
elseif SystemInUse == 1 then
call Board.setTitle("Attachments Tester - (Looping is : ON)")
endif
set Looping = CreateTrigger()
call TriggerRegisterTimerEvent( Looping, S2R(SubString( s, 6, a)), true )
call TriggerAddAction( Looping, function LoopAnimation )
elseif s == "-loop off" and LoopingCommand == true then
set LoopingCommand = false
if SystemInUse == 0 then
call Board.setTitle("Effects Tester - (Looping is : OFF)")
elseif SystemInUse == 1 then
call Board.setTitle("Attachments Tester - (Looping is : OFF)")
endif
call DestroyTrigger( Looping )
set Looping = null
elseif SystemInUse == 0 then
if SubString(s, 0, 9) == "-weather " then
set Index[5] = S2I(SubString(s, 9, a))
if Index[5] > MaxIndex[5] then
set Index[5] = MinIndex[5]
elseif Index[5] < MinIndex[5] then
set Index[5] = MaxIndex[5]
endif
call RemoveWeatherEffect( bj_lastCreatedWeatherEffect )
if Index[5] != MinIndex[5] then
set bj_lastCreatedWeatherEffect = AddWeatherEffect(gg_rct_Map_Area, WeatherChoice[Index[5]])
call EnableWeatherEffect( bj_lastCreatedWeatherEffect, true )
endif
set Line[9] = ( "Weather Effects : " + ( ( "(" + ( I2S(Index[5]) + ") " ) ) + WeatherName[Index[5]] ) )
call Board.setText(9,0,Line[9])
elseif SubString(s, 0, 5) == "-sky " then
set Index[4] = S2I(SubString(s, 5, a))
if Index[4] > MaxIndex[4] then
set Index[4] = MinIndex[4]
elseif Index[4] < MinIndex[4] then
set Index[4] = MaxIndex[4]
endif
if Index[4] != MinIndex[4] then
call SetSkyModel(SkyChoice[Index[4]])
else
call SetSkyModel( null )
endif
set Line[10] = ( "Sky Models : " + ( ( "(" + ( I2S(Index[4]) + ") " ) ) + SkyName[Index[4]] ) )
call Board.setText(10,0,Line[10])
elseif SubString(s, 0, 8) == "-filter " then
set Index[3] = S2I(SubString(s, 8, a))
if Index[3] > MaxIndex[3] then
set Index[3] = MinIndex[3]
elseif Index[3] < MinIndex[3] then
set Index[3] = MaxIndex[3]
endif
if (bj_cineFadeContinueTimer != null) then
call DestroyTimer(bj_cineFadeContinueTimer)
elseif (bj_cineFadeFinishTimer != null) then
call DestroyTimer(bj_cineFadeFinishTimer)
endif
set bj_cineFadeFinishTimer = null
call DisplayCineFilter(false)
if Index[3] != MinIndex[3] then
call RunFade( 1, FadeChoice[Index[3]] )
endif
set Line[11] = ( "Fade Filters : " + ( ( "(" + ( I2S(Index[3]) + ") " ) ) + FadeName[Index[3]] ) )
call Board.setText(11,0,Line[11])
elseif SubString(s, 0, 11) == "-lightning " then
set Index[2] = S2I(SubString(s, 11, a))
if Index[2] > MaxIndex[2] then
set Index[2] = MinIndex[2]
elseif Index[2] < MinIndex[2] then
set Index[2] = MaxIndex[2]
endif
call DestroyLightning( TempLightning )
if Index[2] != MinIndex[2] then
set TempLightning = AddLightningEx(LightningChoice[Index[2]], true, 128.500, -12.000, 400, 128.500, -516.00, 400)
endif
set Line[12] = ( "Lightning Effects : " + ( ( "(" + ( I2S(Index[2]) + ") " ) ) + LightningName[Index[2]] ) )
call Board.setText(12,0,Line[12])
elseif SubString(s, 0, 11) == "-ubersplat " then
set Index[1] = S2I(SubString(s, 11, a))
if Index[1] > MaxIndex[1] then
set Index[1] = MinIndex[1]
elseif Index[1] < MinIndex[1] then
set Index[1] = MaxIndex[1]
endif
call DestroyUbersplat( bj_lastCreatedUbersplat )
if Index[1] != MinIndex[1] then
set bj_lastCreatedUbersplat = CreateUbersplat(XofActor, FinalYofActor, UbersplatChoice[Index[1]], 255, 255, 255, 255, true, true)
call SetUbersplatRenderAlways( bj_lastCreatedUbersplat, true )
call ShowUbersplat( bj_lastCreatedUbersplat, true )
endif
set Line[13] = ( "Ubersplat Effects : " + ( ( "(" + ( I2S(Index[1]) + ") " ) ) + UbersplatName[Index[1]] ) )
call Board.setText(13,0,Line[13])
elseif SubString(s, 0, 9) == "-terrain " then
set Index[0] = S2I(SubString(s, 9, a))
if Index[0] > MaxIndex[0] then
set Index[0] = MinIndex[0]
elseif Index[0] < MinIndex[0] then
set Index[0] = MaxIndex[0]
endif
if Index[0] != MinIndex[0] then
call SetTerrainType( XofActor, NewYofActor, TerrainChoice[Index[0]], 0, 1, 0 )
else
call SetTerrainType( XofActor, NewYofActor, NewTerrainType, 0, 1, 0 )
endif
set Line[14] = ( "Terrain Tiles : " + ( ( "(" + ( I2S(Index[0]) + ") " ) ) + TerrainName[Index[0]] ) )
call Board.setText(14,0,Line[14])
elseif s == "-attachments" then
// Hiding previous multiboard and control panels
call ResetMultiboard()
call SetUnitPosition(Actor[0], 1540.00, 2280.00)
set SystemInUse = 1
call SetUnitPosition(Actor[1], 130.00, -240.00)
call SetCameraTargetController(Actor[1], 0, 0, false)
call ClearSelection()
call SelectUnit(ControlPanel[2], true)
// --------------------------------------------
// Camera Setup and Display
set CamSetting[0] = CameraSetupGetField(Camera, CAMERA_FIELD_ANGLE_OF_ATTACK)
set CamSetting[1] = CameraSetupGetField(Camera, CAMERA_FIELD_TARGET_DISTANCE)
set CamSetting[2] = CameraSetupGetField(Camera, CAMERA_FIELD_ROLL)
set CamSetting[3] = CameraSetupGetField(Camera, CAMERA_FIELD_ROTATION)
set CamSetting[4] = CameraSetupGetField(Camera, CAMERA_FIELD_ZOFFSET)
set CamSetting[5] = CameraSetupGetField(Camera, CAMERA_FIELD_FARZ)
set CamMode = 0
set Line[0] = "---------- C a m e r a ----------"
set Line[1] = ( "Camera Mode : " + "Normal" )
set Line[2] = ( "Distance : " + R2S(CamSetting[1]) )
set Line[3] = ( "Angle of Attack : " + R2S(CamSetting[0]) )
set Line[4] = ( "Rotation : " + R2S(CamSetting[3]) )
set Line[5] = ( "Cam Height : " + R2S(CamSetting[4]) )
set Line[6] = ( "Roll : " + R2S(CamSetting[2]) )
set Line[7] = "---------- M o d e l s ----------"
set Line[8] = ( "Unit Animations : " + ( ( "(" + ( "0" + ") " ) ) + "Stand" ) )
set Line[9] = ( "Helmet Models : " + ( ( "(" + ( "0" + ") " ) ) + "None" ) )
set Line[10] = ( "Chest Models : " + ( ( "(" + ( "0" + ") " ) ) + "None" ) )
set Line[11] = ( "Sword Models : " + ( ( "(" + ( "0" + ") " ) ) + "None" ) )
set Line[12] = ( "Shield Models : " + ( ( "(" + ( "0" + ") " ) ) + "None" ) )
set Line[13] = ( "Boot Models : " + ( ( "(" + ( "0" + ") " ) ) + "None" ) )
set Line[14] = ( "Bracer Models : " + ( ( "(" + ( "0" + ") " ) ) + "None" ) )
// --------------------------------------------
// Multiboard Setup and Display
call Board.setTitle("Attachments Tester - (Looping is : OFF)")
call Board.setAllWidth(0.28)
loop
exitwhen i > ie
call Board.setText(i,0,Line[i])
if i == 0 then
call Board.setIcon(i,0,"ReplaceableTextures\\CommandButtons\\BTN_NormCamera.blp")
elseif i == 7 then
call Board.setIcon(i,0,"ReplaceableTextures\\CommandButtons\\BTNAltarOfKings.blp")
else
call Board.setIcon(i,0,"ReplaceableTextures\\PassiveButtons\\PASBTNStatUp.blp")
endif
set i = i + 1
endloop
// --------------------------------------------
endif
elseif SystemInUse == 1 then
if SubString(s, 0, 8) == "-helmet " then
set Index[8] = S2I(SubString(s, 8, a))
if Index[8] > MaxIndex[8] then
set Index[8] = MinIndex[8]
elseif Index[8] < MinIndex[8] then
set Index[8] = MaxIndex[8]
endif
call DestroyEffect(TempEffect[0])
if Index[8] != MinIndex[8] then
set TempEffect[0] = AddSpecialEffectTarget(HelmetChoice[Index[8]], Actor[1], "head")
endif
set Line[9] = ( "Helmet Models : " + ( ( "(" + ( I2S(Index[8]) + ") " ) ) + HelmetName[Index[8]] ) )
call Board.setText(9,0,Line[9])
elseif SubString(s, 0, 7) == "-chest " then
set Index[9] = S2I(SubString(s, 7, a))
if Index[9] > MaxIndex[9] then
set Index[9] = MinIndex[9]
elseif Index[9] < MinIndex[9] then
set Index[9] = MaxIndex[9]
endif
call DestroyEffect(TempEffect[1])
if Index[9] != MinIndex[9] then
set TempEffect[1] = AddSpecialEffectTarget(ChestChoice[Index[9]], Actor[1], "chest")
endif
set Line[10] = ( "Chest Models : " + ( ( "(" + ( I2S(Index[9]) + ") " ) ) + ChestName[Index[9]] ) )
call Board.setText(10,0,Line[10])
elseif SubString(s, 0, 7) == "-sword " then
set Index[10] = S2I(SubString(s, 7, a))
if Index[10] > MaxIndex[10] then
set Index[10] = MinIndex[10]
elseif Index[10] < MinIndex[10] then
set Index[10] = MaxIndex[10]
endif
call DestroyEffect(TempEffect[2])
if Index[10] != MinIndex[10] then
set TempEffect[2] = AddSpecialEffectTarget(SwordChoice[Index[10]], Actor[1], "hand, right")
endif
set Line[11] = ( "Sword Models : " + ( ( "(" + ( I2S(Index[10]) + ") " ) ) + SwordName[Index[10]] ) )
call Board.setText(11,0,Line[11])
elseif SubString(s, 0, 8) == "-shield " then
set Index[11] = S2I(SubString(s, 8, a))
if Index[11] > MaxIndex[11] then
set Index[11] = MinIndex[11]
elseif Index[11] < MinIndex[11] then
set Index[11] = MaxIndex[11]
endif
call DestroyEffect(TempEffect[3])
if Index[11] != MinIndex[11] then
set TempEffect[3] = AddSpecialEffectTarget(ShieldChoice[Index[11]], Actor[1], "hand, left")
endif
set Line[12] = ( "Shield Models : " + ( ( "(" + ( I2S(Index[11]) + ") " ) ) + ShieldName[Index[11]] ) )
call Board.setText(12,0,Line[12])
elseif SubString(s, 0, 7) == "-boots " then
set Index[12] = S2I(SubString(s, 7, a))
if Index[12] > MaxIndex[12] then
set Index[12] = MinIndex[12]
elseif Index[12] < MinIndex[12] then
set Index[12] = MaxIndex[12]
endif
call DestroyEffect(TempEffect[4])
call DestroyEffect(TempEffect[5])
if Index[12] != MinIndex[12] then
set TempEffect[4] = AddSpecialEffectTarget(BootsChoiceLeft[Index[12]], Actor[1], "foot, left")
set TempEffect[5] = AddSpecialEffectTarget(BootsChoiceRight[Index[12]], Actor[1], "foot, right")
endif
set Line[13] = ( "Boot Models : " + ( ( "(" + ( I2S(Index[12]) + ") " ) ) + BootsName[Index[12]] ) )
call Board.setText(13,0,Line[13])
elseif SubString(s, 0, 9) == "-bracers " then
set Index[13] = S2I(SubString(s, 9, a))
if Index[13] > MaxIndex[13] then
set Index[13] = MinIndex[13]
elseif Index[13] < MinIndex[13] then
set Index[13] = MaxIndex[13]
endif
call DestroyEffect(TempEffect[6])
call DestroyEffect(TempEffect[7])
if Index[13] != MinIndex[13] then
set TempEffect[6] = AddSpecialEffectTarget(BracersChoiceLeft[Index[13]], Actor[1], "hand, left")
set TempEffect[7] = AddSpecialEffectTarget(BracersChoiceRight[Index[13]], Actor[1], "hand, right")
endif
set Line[14] = ( "Bracer Models : " + ( ( "(" + ( I2S(Index[13]) + ") " ) ) + BracersName[Index[13]] ) )
call Board.setText(14,0,Line[14])
elseif s == "-effects" then
// Hiding previous multiboard and control panels
call ResetMultiboard()
call SetUnitPosition(Actor[1], 1540.00, 2280.00)
set SystemInUse = 0
call SetUnitPosition(Actor[0], 130.00, -240.00)
call SetCameraTargetController(Actor[0], 0, 0, false)
call ClearSelection()
call SelectUnit(ControlPanel[0], true)
// --------------------------------------------
// Camera Setup and Display
set CamSetting[0] = CameraSetupGetField(Camera, CAMERA_FIELD_ANGLE_OF_ATTACK)
set CamSetting[1] = CameraSetupGetField(Camera, CAMERA_FIELD_TARGET_DISTANCE)
set CamSetting[2] = CameraSetupGetField(Camera, CAMERA_FIELD_ROLL)
set CamSetting[3] = CameraSetupGetField(Camera, CAMERA_FIELD_ROTATION)
set CamSetting[4] = CameraSetupGetField(Camera, CAMERA_FIELD_ZOFFSET)
set CamSetting[5] = CameraSetupGetField(Camera, CAMERA_FIELD_FARZ)
set CamMode = 0
set Line[0] = "---------- C a m e r a ----------"
set Line[1] = ( "Camera Mode : " + "Normal" )
set Line[2] = ( "Distance : " + R2S(CamSetting[1]) )
set Line[3] = ( "Angle of Attack : " + R2S(CamSetting[0]) )
set Line[4] = ( "Rotation : " + R2S(CamSetting[3]) )
set Line[5] = ( "Cam Height : " + R2S(CamSetting[4]) )
set Line[6] = ( "Roll : " + R2S(CamSetting[2]) )
set Line[7] = "---------- M o d e l s ----------"
set Line[8] = ( "Unit Animations : " + ( ( "(" + ( "0" + ") " ) ) + "Stand - 1" ) )
set Line[9] = ( "Weather Effects : " + ( ( "(" + ( "0" + ") " ) ) + "None" ) )
set Line[10] = ( "Sky Models : " + ( ( "(" + ( "0" + ") " ) ) + "None" ) )
set Line[11] = ( "Fade Filters : " + ( ( "(" + ( "0" + ") " ) ) + "None" ) )
set Line[12] = ( "Lightning Effects : " + ( ( "(" + ( "0" + ") " ) ) + "None" ) )
set Line[13] = ( "Ubersplat Effects : " + ( ( "(" + ( "0" + ") " ) ) + "None" ) )
set Line[14] = ( "Terrain Tiles : " + ( ( "(" + ( "0" + ") " ) ) + "None" ) )
// --------------------------------------------
// Multiboard Setup and Display
call Board.setTitle("Effects Tester - (Looping is : OFF)")
call Board.setAllWidth(0.28)
loop
exitwhen i > ie
call Board.setText(i,0,Line[i])
if i == 0 then
call Board.setIcon(i,0,"ReplaceableTextures\\CommandButtons\\BTN_NormCamera.blp")
elseif i == 7 then
call Board.setIcon(i,0,"ReplaceableTextures\\CommandButtons\\BTNAltarOfKings.blp")
else
call Board.setIcon(i,0,"ReplaceableTextures\\PassiveButtons\\PASBTNStatUp.blp")
endif
set i = i + 1
endloop
// --------------------------------------------
endif
endif
// Nulling the string variable
set s = null
// --------------------------------------------
endfunction
private function Init takes nothing returns nothing
local trigger t = CreateTrigger( )
call TriggerRegisterPlayerChatEvent( t, Player(0), "", false )
call TriggerAddAction( t, function SkippingActions )
set t = null
endfunction
endscope
scope ControlPanel initializer Init
private function ControlPanelActions takes nothing returns nothing
// Creating local variables
local unit u = GetTriggerUnit()
local integer uid = GetUnitTypeId(u)
local integer aid = GetSpellAbilityId()
// --------------------------------------------
// Why Begins Casting an Ability? So that you could browse between animations a lot faster.
call IssueImmediateOrder( u, "stop" )
// Whats with the Stop? to prevent the Control Panel from casting anything.
if aid == 'A004' then
set CamMode = ( CamMode + 1 )
if CamMode > 2 then
set CamMode = 0
endif
set Line[1] = ( "Camera Mode : " + CameraModeName[CamMode] )
call Board.setText(1,0,Line[1])
elseif aid == 'A001' or aid == 'A000' then
if uid == 'H002' or uid == 'H003' then
if aid == 'A001' then
set Index[6] = ( Index[6] + 1 )
else
set Index[6] = ( Index[6] - 1 )
endif
if Index[6] > MaxIndex[6] then
set Index[6] = MinIndex[6]
elseif Index[6] < MinIndex[6] then
set Index[6] = MaxIndex[6]
endif
set Line[8] = ( "Unit Animations : " + ( ( "(" + ( I2S(Index[6]) + ") " ) ) + AnimationName[Index[6]] ) )
call SetUnitAnimationByIndex(Actor[0], Index[6])
call Board.setText(8,0,Line[8])
else
if aid == 'A001' then
set Index[7] = ( Index[7] + 1 )
else
set Index[7] = ( Index[7] - 1 )
endif
if Index[7] > MaxIndex[7] then
set Index[7] = MinIndex[7]
elseif Index[7] < MinIndex[7] then
set Index[7] = MaxIndex[7]
endif
set Line[8] = ( "Unit Animations : " + ( ( "(" + ( I2S(Index[7]) + ") " ) ) + AnimationNameA[Index[7]] ) )
call SetUnitAnimationByIndex(Actor[1], Index[7])
call Board.setText(8,0,Line[8])
endif
elseif aid == 'A006' or aid == 'A007' then
if aid == 'A006' then
set Index[5] = ( Index[5] + 1 )
else
set Index[5] = ( Index[5] - 1 )
endif
if Index[5] > MaxIndex[5] then
set Index[5] = MinIndex[5]
elseif Index[5] < MinIndex[5] then
set Index[5] = MaxIndex[5]
endif
call RemoveWeatherEffect( bj_lastCreatedWeatherEffect )
if Index[5] != MinIndex[5] then
set bj_lastCreatedWeatherEffect = AddWeatherEffect(gg_rct_Map_Area, WeatherChoice[Index[5]])
call EnableWeatherEffect( bj_lastCreatedWeatherEffect, true )
endif
set Line[9] = ( "Weather Effects : " + ( ( "(" + ( I2S(Index[5]) + ") " ) ) + WeatherName[Index[5]] ) )
call Board.setText(9,0,Line[9])
elseif aid == 'A00B' or aid == 'A00A' then
if aid == 'A00B' then
set Index[4] = ( Index[4] + 1 )
else
set Index[4] = ( Index[4] - 1 )
endif
if Index[4] > MaxIndex[4] then
set Index[4] = MinIndex[4]
elseif Index[4] < MinIndex[4] then
set Index[4] = MaxIndex[4]
endif
if Index[4] != MinIndex[4] then
call SetSkyModel(SkyChoice[Index[4]])
else
call SetSkyModel( null )
endif
set Line[10] = ( "Sky Models : " + ( ( "(" + ( I2S(Index[4]) + ") " ) ) + SkyName[Index[4]] ) )
call Board.setText(10,0,Line[10])
elseif aid == 'A00E' or aid == 'A00F' then
if aid == 'A00E' then
set Index[3] = ( Index[3] + 1 )
else
set Index[3] = ( Index[3] - 1 )
endif
if Index[3] > MaxIndex[3] then
set Index[3] = MinIndex[3]
elseif Index[3] < MinIndex[3] then
set Index[3] = MaxIndex[3]
endif
if (bj_cineFadeContinueTimer != null) then
call DestroyTimer(bj_cineFadeContinueTimer)
elseif (bj_cineFadeFinishTimer != null) then
call DestroyTimer(bj_cineFadeFinishTimer)
endif
set bj_cineFadeFinishTimer = null
call DisplayCineFilter(false)
if Index[3] != MinIndex[3] then
call RunFade( 1, FadeChoice[Index[3]] )
endif
set Line[11] = ( "Fade Filters : " + ( ( "(" + ( I2S(Index[3]) + ") " ) ) + FadeName[Index[3]] ) )
call Board.setText(11,0,Line[11])
elseif aid == 'A00G' or aid == 'A00H' then
if aid == 'A00G' then
set Index[2] = ( Index[2] + 1 )
else
set Index[2] = ( Index[2] - 1 )
endif
if Index[2] > MaxIndex[2] then
set Index[2] = MinIndex[2]
elseif Index[2] < MinIndex[2] then
set Index[2] = MaxIndex[2]
endif
call DestroyLightning( TempLightning )
if Index[2] != MinIndex[2] then
set TempLightning = AddLightningEx(LightningChoice[Index[2]], true, 128.500, -12.000, 400, 128.500, -516.00, 400)
endif
set Line[12] = ( "Lightning Effects : " + ( ( "(" + ( I2S(Index[2]) + ") " ) ) + LightningName[Index[2]] ) )
call Board.setText(12,0,Line[12])
elseif aid == 'A00I' or aid == 'A00J' then
if aid == 'A00I' then
set Index[1] = ( Index[1] + 1 )
else
set Index[1] = ( Index[1] - 1 )
endif
if Index[1] > MaxIndex[1] then
set Index[1] = MinIndex[1]
elseif Index[1] < MinIndex[1] then
set Index[1] = MaxIndex[1]
endif
call DestroyUbersplat( bj_lastCreatedUbersplat )
if Index[1] != MinIndex[1] then
set bj_lastCreatedUbersplat = CreateUbersplat(XofActor, FinalYofActor, UbersplatChoice[Index[1]], 255, 255, 255, 255, true, true)
call SetUbersplatRenderAlways( bj_lastCreatedUbersplat, true )
call ShowUbersplat( bj_lastCreatedUbersplat, true )
endif
set Line[13] = ( "Ubersplat Effects : " + ( ( "(" + ( I2S(Index[1]) + ") " ) ) + UbersplatName[Index[1]] ) )
call Board.setText(13,0,Line[13])
elseif aid == 'A00L' or aid == 'A00K' then
if aid == 'A00L' then
set Index[0] = ( Index[0] + 1 )
else
set Index[0] = ( Index[0] - 1 )
endif
if Index[0] > MaxIndex[0] then
set Index[0] = MinIndex[0]
elseif Index[0] < MinIndex[0] then
set Index[0] = MaxIndex[0]
endif
if Index[0] != MinIndex[0] then
call SetTerrainType( XofActor, NewYofActor, TerrainChoice[Index[0]], 0, 1, 0 )
else
call SetTerrainType( XofActor, NewYofActor, NewTerrainType, 0, 1, 0 )
endif
set Line[14] = ( "Terrain Tiles : " + ( ( "(" + ( I2S(Index[0]) + ") " ) ) + TerrainName[Index[0]] ) )
call Board.setText(14,0,Line[14])
elseif aid == 'A008' then
if ShowBoard == true then
set ShowBoard = false
call Board.display(true,false)
else
set ShowBoard = true
call Board.display(false,true)
endif
elseif aid == 'A002' then
call ResetMultiboard()
elseif aid == 'A00C' then
if uid == 'H002' or uid == 'H003' then
call ClearSelection()
call SelectUnit(ControlPanel[1], true)
else
call ClearSelection()
call SelectUnit(ControlPanel[3], true)
endif
elseif aid == 'A00D' then
if uid == 'H002' or uid == 'H003' then
call ClearSelection()
call SelectUnit(ControlPanel[0], true)
else
call ClearSelection()
call SelectUnit(ControlPanel[2], true)
endif
elseif aid == 'A00N' or aid == 'A00O' then
if aid == 'A00N' then
set Index[8] = ( Index[8] + 1 )
else
set Index[8] = ( Index[8] - 1 )
endif
if Index[8] > MaxIndex[8] then
set Index[8] = MinIndex[8]
elseif Index[8] < MinIndex[8] then
set Index[8] = MaxIndex[8]
endif
call DestroyEffect(TempEffect[0])
if Index[8] != MinIndex[8] then
set TempEffect[0] = AddSpecialEffectTarget(HelmetChoice[Index[8]], Actor[1], "head")
endif
set Line[9] = ( "Helmet Models : " + ( ( "(" + ( I2S(Index[8]) + ") " ) ) + HelmetName[Index[8]] ) )
call Board.setText(9,0,Line[9])
elseif aid == 'A00M' or aid == 'A003' then
if aid == 'A00M' then
set Index[9] = ( Index[9] + 1 )
else
set Index[9] = ( Index[9] - 1 )
endif
if Index[9] > MaxIndex[9] then
set Index[9] = MinIndex[9]
elseif Index[9] < MinIndex[9] then
set Index[9] = MaxIndex[9]
endif
call DestroyEffect(TempEffect[1])
if Index[9] != MinIndex[9] then
set TempEffect[1] = AddSpecialEffectTarget(ChestChoice[Index[9]], Actor[1], "chest")
endif
set Line[10] = ( "Chest Models : " + ( ( "(" + ( I2S(Index[9]) + ") " ) ) + ChestName[Index[9]] ) )
call Board.setText(10,0,Line[10])
elseif aid == 'A00P' or aid == 'A00Q' then
if aid == 'A00P' then
set Index[10] = ( Index[10] + 1 )
else
set Index[10] = ( Index[10] - 1 )
endif
if Index[10] > MaxIndex[10] then
set Index[10] = MinIndex[10]
elseif Index[10] < MinIndex[10] then
set Index[10] = MaxIndex[10]
endif
call DestroyEffect(TempEffect[2])
if Index[10] != MinIndex[10] then
set TempEffect[2] = AddSpecialEffectTarget(SwordChoice[Index[10]], Actor[1], "hand, right")
endif
set Line[11] = ( "Sword Models : " + ( ( "(" + ( I2S(Index[10]) + ") " ) ) + SwordName[Index[10]] ) )
call Board.setText(11,0,Line[11])
elseif aid == 'A00R' or aid == 'A00S' then
if aid == 'A00R' then
set Index[11] = ( Index[11] + 1 )
else
set Index[11] = ( Index[11] - 1 )
endif
if Index[11] > MaxIndex[11] then
set Index[11] = MinIndex[11]
elseif Index[11] < MinIndex[11] then
set Index[11] = MaxIndex[11]
endif
call DestroyEffect(TempEffect[3])
if Index[11] != MinIndex[11] then
set TempEffect[3] = AddSpecialEffectTarget(ShieldChoice[Index[11]], Actor[1], "hand, left")
endif
set Line[12] = ( "Shield Models : " + ( ( "(" + ( I2S(Index[11]) + ") " ) ) + ShieldName[Index[11]] ) )
call Board.setText(12,0,Line[12])
elseif aid == 'A00T' or aid == 'A00U' then
if aid == 'A00T' then
set Index[12] = ( Index[12] + 1 )
else
set Index[12] = ( Index[12] - 1 )
endif
if Index[12] > MaxIndex[12] then
set Index[12] = MinIndex[12]
elseif Index[12] < MinIndex[12] then
set Index[12] = MaxIndex[12]
endif
call DestroyEffect(TempEffect[4])
call DestroyEffect(TempEffect[5])
if Index[12] != MinIndex[12] then
set TempEffect[4] = AddSpecialEffectTarget(BootsChoiceLeft[Index[12]], Actor[1], "foot, left")
set TempEffect[5] = AddSpecialEffectTarget(BootsChoiceRight[Index[12]], Actor[1], "foot, right")
endif
set Line[13] = ( "Boot Models : " + ( ( "(" + ( I2S(Index[12]) + ") " ) ) + BootsName[Index[12]] ) )
call Board.setText(13,0,Line[13])
elseif aid == 'A00V' or aid == 'A00W' then
if aid == 'A00V' then
set Index[13] = ( Index[13] + 1 )
else
set Index[13] = ( Index[13] - 1 )
endif
if Index[13] > MaxIndex[13] then
set Index[13] = MinIndex[13]
elseif Index[13] < MinIndex[13] then
set Index[13] = MaxIndex[13]
endif
call DestroyEffect(TempEffect[6])
call DestroyEffect(TempEffect[7])
if Index[13] != MinIndex[13] then
set TempEffect[6] = AddSpecialEffectTarget(BracersChoiceLeft[Index[13]], Actor[1], "hand, left")
set TempEffect[7] = AddSpecialEffectTarget(BracersChoiceRight[Index[13]], Actor[1], "hand, right")
endif
set Line[14] = ( "Bracer Models : " + ( ( "(" + ( I2S(Index[13]) + ") " ) ) + BracersName[Index[13]] ) )
call Board.setText(14,0,Line[14])
endif
// Nulling the variables
set u = null
// --------------------------------------------
endfunction
private function Init takes nothing returns nothing
local trigger t = CreateTrigger( )
call TriggerRegisterPlayerUnitEvent( t, Player(0), EVENT_PLAYER_UNIT_SPELL_CAST, null)
call TriggerAddAction( t, function ControlPanelActions )
set t = null
endfunction
endscope