HomeUser Control Panel (unavailable in archive)ForumsTutorialsArt GalleryResourcesMaps

Clock in Multiboard

05-09-2006, 02:47 AM#1
Siphonized
I need a clock in my multiboard, anyone know how to get this?

start at 00:00:00 and then tick its way up.

So in short, a clock that displays the time spent playin the map.
05-09-2006, 03:39 AM#2
st33m
You could just add to AA:BB:CC and add to CC 1 every second and then when CC = 60 add 1 to BB and then when that is 60 add 1 to AA. Just an idea, and I bet theres a better way.

You could also use the ingame clock... but thats not very versatile...
05-09-2006, 03:42 AM#3
Linera
Here you go...

This is a example of how to make it and keep it in the 00:00:00 format.

The path for the clock icon in this example is:

Code:
UI\Widgets\BattleNet\bnet-tournament-clock.blp
Attached Files
File type: w3xMultiboard clock.w3x (16.6 KB)
05-09-2006, 12:14 PM#4
BertTheJasser
Just start a timer and update the headline of th MB every 1 sec. and then do it like st33m suggested.
05-09-2006, 03:59 PM#5
Linera
if you had read his post, he said he wanted the clock inside the multiboard which i made for him.
05-09-2006, 10:43 PM#6
st33m
Quote:
Originally Posted by Linera
if you had read his post, he said he wanted the clock inside the multiboard which i made for him.

Quote:
I need a clock in my multiboard, anyone know how to get this?

start at 00:00:00 and then tick its way up.

So in short, a clock that displays the time spent playin the map.

Nowhere did he say anything to that effect. He just said he wanted a clock that ticks by 00:00:00. Not that he wanted THE clock inside it.
05-09-2006, 11:03 PM#7
Linera
Quote:
I need a clock in my multiboard
hence inside the multiboard.
05-09-2006, 11:05 PM#8
st33m
It just says a clock though...

Okay, this is a stupid argument... sorry. Either way, he has recieved help.
05-10-2006, 04:07 PM#9
The)TideHunter(
Ok, il help, iv made a great system that does this, unfortunatly is dosent use a timer, (so i think, unless periodic event dosent use 1)

This system requires:
A GameCache varaible called Main_Game_Cache
A String Varaible called Game_TimeString (which will be your time, so you can put the string in any place of your multiboard)

Make a trigger with the event

Trigger:
Events
Time - Every 1.00 seconds of game time

and put this into the trigger as the actions(requires convert to custom text:

Collapse JASS:
    local integer Seconds = GetStoredInteger(udg_Game_Cache, "Main", "GameSeconds")
    local integer TenSeconds = GetStoredInteger(udg_Game_Cache, "Main", "GameTenSeconds")
    local integer Minutes = GetStoredInteger(udg_Game_Cache, "Main", "GameMinutes")
    local integer TenMinutes = GetStoredInteger(udg_Game_Cache, "Main", "GameTenMinutes")
    local integer Hours = GetStoredInteger(udg_Game_Cache, "Main", "GameHours")
    local integer HeroReviveTimeLoopN
    set Seconds = Seconds + 1
    if(Seconds == 10) then
        set Seconds = 0
        set TenSeconds = TenSeconds + 1
        if(TenSeconds == 6) then
            set TenSeconds = 0
            set Minutes = Minutes + 1
            if(Minutes == 10) then
                set Minutes = 0
                set TenMinutes = TenMinutes + 1
                if(TenMinutes == 6) then
                    set TenMinutes = 0
                    set Hours = Hours + 1
                endif
            endif
        endif
    endif
    call StoreIntegerBJ( Seconds, "GameSeconds", "Main", udg_Game_Cache )
    call StoreIntegerBJ( TenSeconds, "GameTenSeconds", "Main", udg_Game_Cache )
    call StoreIntegerBJ( Minutes, "GameMinutes", "Main", udg_Game_Cache )
    call StoreIntegerBJ( TenMinutes, "GameTenMinutes", "Main", udg_Game_Cache )
    call StoreIntegerBJ( Hours, "GameHours", "Main", udg_Game_Cache )
    set udg_Game_TimeString = I2S(Hours) + ":" + I2S(TenMinutes) + I2S(Minutes) + ":" + I2S(TenSeconds) + I2S(Seconds)
    if(Hours == 0) then
        set udg_Game_TimeString = I2S(TenMinutes) + I2S(Minutes) + ":" + I2S(TenSeconds) + I2S(Seconds)
        if(Hours == 0) and (TenMinutes == 0) then
            set udg_Game_TimeString = I2S(Minutes) + ":" + I2S(TenSeconds) + I2S(Seconds)
            if(Hours == 0) and (TenMinutes == 0) and (Minutes == 0) then
                set udg_Game_TimeString = I2S(TenSeconds) + I2S(Seconds)
                if(Hours == 0) and (TenMinutes == 0) and (Minutes == 0) and (TenSeconds == 0) then
                    set udg_Game_TimeString = I2S(Seconds)
                endif
            endif
        endif
    endif


Iv done it this way because it only requires a GameCache instead of a load of integers