This is something I've been working on for a few months (it didn't take that long, my motivation for WC3 these days is pretty low). I'm using it to create multiboards for a single player rpg. For anybody doing complex multiboard systems in a map, then this may be useful to you.
*Note: This map is meant to work with a program called GameCaptureX. This also requires JNGP and is intended for people with basic vJASS knowledge.
You can create multiboards in-game. They are fully editable, and you can create a warcraft 3 save and come back to the multiboard later if you need to. Once you are done making your multiboard, you need to launch GameCaptureX and type -compile for code to display. This code is used to setup your multiboard. You only need to copy the code from GameCaptureX and paste it into your desired map. You also need to copy and paste one library into your map, which is specified in this map.
While this map is intended for basic multiboard setup (and generating the code for that), you can use it just for brain storming as well.
To do list for later versions:
-Code compiling for specific sections of the multiboard
-Storage support for multiboard information
-In-game GUI
The version history can be found inside the map.
Example:
Resulting code:
Code: Select all
//=================================================================================
//=================================================================================
// Compiled by Multiboard Developmental Tool v1.01
//This setup script requres MDT Lib (MultiboardDevelopmentalToolEssentials library)
// from the Multiboard Developmental Tool Map.
// The map can be downloaded at:
// http://forum.3ice.hu/viewtopic.php?f=7&t=820
//=================================================================================
//=================================================================================
library MBNewAgeHeroLineWars initializer onInit uses MultiboardDevelopmentalToolEssentials
globals
public multiboard Board
public integer Rows = 12
public integer Columns = 3
public string Title
public integer Title_Red = 92
public integer Title_Green = 92
public integer Title_Blue = 190
endglobals
//This function only needs to be run once. Running it more than once can potentially cause memory leaks.
//It already runs via a trigger in the onInit function at the bottom of this library. You can remove the TriggerAddCondition line and run it manually if you need to.
public function Multiboard_Setup takes nothing returns boolean
local multiboarditem mb
set Title = "New Age Hero Line Wars"
set Board = CreateMultiboard()
call MultiboardSetRowCount(Board, Rows)
call MultiboardSetColumnCount(Board, Columns)
call MultiboardSetTitleText(Board, Title)
call MultiboardSetTitleTextColor(Board, Title_Red, Title_Green, Title_Blue, 255)
set mb = MultiboardGetItem(Board,0,0)
call MultiboardSetItemStyle(mb, false, true)
call MultiboardSetItemWidth(mb, 0.015)
call MultiboardSetItemIcon(mb, "ReplaceableTextures\\CommandButtons\\BTNSkillz.blp")
call MultiboardReleaseItem(mb)
set mb = MultiboardGetItem(Board,1,0)
call MultiboardSetItemStyle(mb, false, true)
call MultiboardSetItemWidth(mb, 0.015)
call MultiboardSetItemIcon(mb, "ReplaceableTextures\\CommandButtons\\BTNSkillz.blp")
call MultiboardReleaseItem(mb)
set mb = MultiboardGetItem(Board,2,0)
call MultiboardSetItemStyle(mb, false, true)
call MultiboardSetItemWidth(mb, 0.015)
call MultiboardSetItemIcon(mb, "ReplaceableTextures\\CommandButtons\\BTNSkillz.blp")
call MultiboardReleaseItem(mb)
set mb = MultiboardGetItem(Board,3,0)
call MultiboardSetItemStyle(mb, false, true)
call MultiboardSetItemWidth(mb, 0.015)
call MultiboardSetItemIcon(mb, "ReplaceableTextures\\CommandButtons\\BTNSkillz.blp")
call MultiboardReleaseItem(mb)
set mb = MultiboardGetItem(Board,4,0)
call MultiboardSetItemStyle(mb, false, true)
call MultiboardSetItemWidth(mb, 0.015)
call MultiboardSetItemIcon(mb, "ReplaceableTextures\\CommandButtons\\BTNSkillz.blp")
call MultiboardReleaseItem(mb)
set mb = MultiboardGetItem(Board,5,0)
call MultiboardSetItemStyle(mb, false, true)
call MultiboardSetItemWidth(mb, 0.015)
call MultiboardSetItemIcon(mb, "ReplaceableTextures\\CommandButtons\\BTNSkillz.blp")
call MultiboardReleaseItem(mb)
set mb = MultiboardGetItem(Board,6,0)
call MultiboardSetItemStyle(mb, false, true)
call MultiboardSetItemWidth(mb, 0.015)
call MultiboardSetItemIcon(mb, "ReplaceableTextures\\CommandButtons\\BTNSkillz.blp")
call MultiboardReleaseItem(mb)
set mb = MultiboardGetItem(Board,7,0)
call MultiboardSetItemStyle(mb, false, true)
call MultiboardSetItemWidth(mb, 0.015)
call MultiboardSetItemIcon(mb, "ReplaceableTextures\\CommandButtons\\BTNSkillz.blp")
call MultiboardReleaseItem(mb)
set mb = MultiboardGetItem(Board,8,0)
call MultiboardSetItemStyle(mb, false, true)
call MultiboardSetItemWidth(mb, 0.015)
call MultiboardSetItemIcon(mb, "ReplaceableTextures\\CommandButtons\\BTNSkillz.blp")
call MultiboardReleaseItem(mb)
set mb = MultiboardGetItem(Board,9,0)
call MultiboardSetItemStyle(mb, false, true)
call MultiboardSetItemWidth(mb, 0.015)
call MultiboardSetItemIcon(mb, "ReplaceableTextures\\CommandButtons\\BTNSkillz.blp")
call MultiboardReleaseItem(mb)
set mb = MultiboardGetItem(Board,10,0)
call MultiboardSetItemStyle(mb, false, true)
call MultiboardSetItemWidth(mb, 0.015)
call MultiboardSetItemIcon(mb, "ReplaceableTextures\\CommandButtons\\BTNSkillz.blp")
call MultiboardReleaseItem(mb)
set mb = MultiboardGetItem(Board,11,0)
call MultiboardSetItemStyle(mb, false, true)
call MultiboardSetItemWidth(mb, 0.015)
call MultiboardSetItemIcon(mb, "ReplaceableTextures\\CommandButtons\\BTNSkillz.blp")
call MultiboardReleaseItem(mb)
set mb = MultiboardGetItem(Board,0,1)
call MultiboardSetItemStyle(mb, true, false)
call MultiboardSetItemWidth(mb, 0.110)
call MultiboardSetItemValue(mb, "Forces of Light Lives")
call MultiboardSetItemValueColor(mb,255,0,0,255)
call MultiboardReleaseItem(mb)
set mb = MultiboardGetItem(Board,1,1)
call MultiboardSetItemStyle(mb, true, false)
call MultiboardSetItemWidth(mb, 0.110)
call MultiboardSetItemValue(mb, "Forces of Darkness Lives")
call MultiboardSetItemValueColor(mb,0,0,255,255)
call MultiboardReleaseItem(mb)
set mb = MultiboardGetItem(Board,2,1)
call MultiboardSetItemStyle(mb, true, false)
call MultiboardSetItemWidth(mb, 0.080)
call MultiboardSetItemValue(mb, "(not playing)")
call MultiboardSetItemValueColor(mb,0,255,255,255)
call MultiboardReleaseItem(mb)
set mb = MultiboardGetItem(Board,3,1)
call MultiboardSetItemStyle(mb, true, false)
call MultiboardSetItemWidth(mb, 0.080)
call MultiboardSetItemValue(mb, "(not playing)")
call MultiboardSetItemValueColor(mb,128,0,192,255)
call MultiboardReleaseItem(mb)
set mb = MultiboardGetItem(Board,4,1)
call MultiboardSetItemStyle(mb, true, false)
call MultiboardSetItemWidth(mb, 0.080)
call MultiboardSetItemValue(mb, "(not playing)")
call MultiboardSetItemValueColor(mb,255,255,0,255)
call MultiboardReleaseItem(mb)
set mb = MultiboardGetItem(Board,5,1)
call MultiboardSetItemStyle(mb, true, false)
call MultiboardSetItemWidth(mb, 0.080)
call MultiboardSetItemValue(mb, "(not playing)")
call MultiboardSetItemValueColor(mb,255,128,0,255)
call MultiboardReleaseItem(mb)
set mb = MultiboardGetItem(Board,6,1)
call MultiboardSetItemStyle(mb, true, false)
call MultiboardSetItemWidth(mb, 0.080)
call MultiboardSetItemValue(mb, "(not playing)")
call MultiboardSetItemValueColor(mb,0,255,0,255)
call MultiboardReleaseItem(mb)
set mb = MultiboardGetItem(Board,7,1)
call MultiboardSetItemStyle(mb, true, false)
call MultiboardSetItemWidth(mb, 0.080)
call MultiboardSetItemValue(mb, "(not playing)")
call MultiboardSetItemValueColor(mb,255,128,128,255)
call MultiboardReleaseItem(mb)
set mb = MultiboardGetItem(Board,8,1)
call MultiboardSetItemStyle(mb, true, false)
call MultiboardSetItemWidth(mb, 0.080)
call MultiboardSetItemValue(mb, "(not playing)")
call MultiboardSetItemValueColor(mb,192,192,192,255)
call MultiboardReleaseItem(mb)
set mb = MultiboardGetItem(Board,9,1)
call MultiboardSetItemStyle(mb, true, false)
call MultiboardSetItemWidth(mb, 0.080)
call MultiboardSetItemValue(mb, "(not playing)")
call MultiboardSetItemValueColor(mb,128,128,255,255)
call MultiboardReleaseItem(mb)
set mb = MultiboardGetItem(Board,10,1)
call MultiboardSetItemStyle(mb, true, false)
call MultiboardSetItemWidth(mb, 0.080)
call MultiboardSetItemValue(mb, "(not playing)")
call MultiboardSetItemValueColor(mb,64,128,64,255)
call MultiboardReleaseItem(mb)
set mb = MultiboardGetItem(Board,11,1)
call MultiboardSetItemStyle(mb, true, false)
call MultiboardSetItemWidth(mb, 0.080)
call MultiboardSetItemValue(mb, "(not playing)")
call MultiboardSetItemValueColor(mb,128,64,32,255)
call MultiboardReleaseItem(mb)
set mb = MultiboardGetItem(Board,0,2)
call MultiboardSetItemStyle(mb, true, false)
call MultiboardSetItemWidth(mb, 0.015)
call MultiboardSetItemValue(mb, "150")
call MultiboardSetItemValueColor(mb,255,0,0,255)
call MultiboardReleaseItem(mb)
set mb = MultiboardGetItem(Board,1,2)
call MultiboardSetItemStyle(mb, true, false)
call MultiboardSetItemWidth(mb, 0.015)
call MultiboardSetItemValue(mb, "150")
call MultiboardSetItemValueColor(mb,0,0,255,255)
call MultiboardReleaseItem(mb)
set mb = MultiboardGetItem(Board,2,2)
call MultiboardSetItemStyle(mb, true, false)
call MultiboardSetItemWidth(mb, 0.050)
call MultiboardSetItemValue(mb, "99999999")
call MultiboardSetItemValueColor(mb,0,255,255,255)
call MultiboardReleaseItem(mb)
set mb = MultiboardGetItem(Board,3,2)
call MultiboardSetItemStyle(mb, true, false)
call MultiboardSetItemWidth(mb, 0.050)
call MultiboardSetItemValue(mb, "99999999")
call MultiboardSetItemValueColor(mb,128,0,192,255)
call MultiboardReleaseItem(mb)
set mb = MultiboardGetItem(Board,4,2)
call MultiboardSetItemStyle(mb, true, false)
call MultiboardSetItemWidth(mb, 0.050)
call MultiboardSetItemValue(mb, "99999999")
call MultiboardSetItemValueColor(mb,255,255,0,255)
call MultiboardReleaseItem(mb)
set mb = MultiboardGetItem(Board,5,2)
call MultiboardSetItemStyle(mb, true, false)
call MultiboardSetItemWidth(mb, 0.050)
call MultiboardSetItemValue(mb, "99999999")
call MultiboardSetItemValueColor(mb,255,128,0,255)
call MultiboardReleaseItem(mb)
set mb = MultiboardGetItem(Board,6,2)
call MultiboardSetItemStyle(mb, true, false)
call MultiboardSetItemWidth(mb, 0.050)
call MultiboardSetItemValue(mb, "99999999")
call MultiboardSetItemValueColor(mb,0,255,0,255)
call MultiboardReleaseItem(mb)
set mb = MultiboardGetItem(Board,7,2)
call MultiboardSetItemStyle(mb, true, false)
call MultiboardSetItemWidth(mb, 0.050)
call MultiboardSetItemValue(mb, "99999999")
call MultiboardSetItemValueColor(mb,255,128,128,255)
call MultiboardReleaseItem(mb)
set mb = MultiboardGetItem(Board,8,2)
call MultiboardSetItemStyle(mb, true, false)
call MultiboardSetItemWidth(mb, 0.050)
call MultiboardSetItemValue(mb, "99999999")
call MultiboardSetItemValueColor(mb,192,192,192,255)
call MultiboardReleaseItem(mb)
set mb = MultiboardGetItem(Board,9,2)
call MultiboardSetItemStyle(mb, true, false)
call MultiboardSetItemWidth(mb, 0.050)
call MultiboardSetItemValue(mb, "99999999")
call MultiboardSetItemValueColor(mb,128,128,255,255)
call MultiboardReleaseItem(mb)
set mb = MultiboardGetItem(Board,10,2)
call MultiboardSetItemStyle(mb, true, false)
call MultiboardSetItemWidth(mb, 0.050)
call MultiboardSetItemValue(mb, "99999999")
call MultiboardSetItemValueColor(mb,64,128,64,255)
call MultiboardReleaseItem(mb)
set mb = MultiboardGetItem(Board,11,2)
call MultiboardSetItemStyle(mb, true, false)
call MultiboardSetItemWidth(mb, 0.050)
call MultiboardSetItemValue(mb, "99999999")
call MultiboardSetItemValueColor(mb,128,64,32,255)
call MultiboardReleaseItem(mb)
return false
endfunction
private function onInit takes nothing returns nothing
call TriggerAddCondition(MultiboardDevelopmentalToolEssentials_T,Condition(function Multiboard_Setup))
endfunction
endlibrary