chart - escaco95/Warcraft-III-Libraries GitHub Wiki

μ ν•©ν•œ μ›Œν¬λž˜ν”„νŠΈ 버전

1.28.5

링크

μ†ŒμŠ€ μ½”λ“œ(vJass)

TESH μΈν…”λ¦¬μ„ΌμŠ€(txt)

κ°œμš”

κΈ°μ‘΄ jassμ—μ„œ multiboard, multiboarditem의 ν˜•νƒœλ‘œ μ§€μ›λ˜μ—ˆλ˜ λ©€ν‹°λ³΄λ“œ κΈ°λŠ₯을 λˆ„μˆ˜ 없이 μ§κ΄€μ μœΌλ‘œ 관리할 수 μžˆλŠ” κ°œμ²΄μž…λ‹ˆλ‹€.

local multiboard b = CreateMultiboard()
local multiboarditem t = MultiboardGetItem( b, 4, 0 ) // Y,X μˆœμ„œ

μœ„ jass μ½”λ“œλŠ” chart μΈμŠ€ν„΄μŠ€λ₯Ό μ‚¬μš©ν•˜μ—¬ λ‹€μŒκ³Ό 같이 κ΅¬ν˜„ν•˜λŠ” κ²ƒμœΌλ‘œ, λ™μΌν•œ 결과물을 얻을 수 μžˆμŠ΅λ‹ˆλ‹€.

local chart c = CreateChart()
loacl chartitem t = ChartGetItem( c, 0, 4 ) // X,Y μˆœμ„œ

λ˜ν•œ, μ‚¬μš©μžμ˜ 개발 μ·¨ν–₯에 맞게 struct methodλ˜λŠ” function을 μ‚¬μš©ν•˜μ—¬ μΈμŠ€ν„΄μŠ€λ₯Ό μ œμ–΄ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

//
// ν•¨μˆ˜ ν˜ΈμΆœμ„ 기반으둜 ν•œ chart 개체 μž‘μ—…
//
scope UsingChartWithFunction initializer main
    private function AtLeast0sPassed takes nothing returns nothing
        local chart c = CreateChart()
        call ChartSetSize( c, 4, 4 )
        call ChartSetTitle( c, "제λͺ©" )
        call ChartSetItemsStyle( c, false, true )
        call ChartSetColumnStyle( c, 0, true, true )
        call ChartSetColumnValue( c, 0, "κ°’" )
        call ChartSetItemValue( c, 0, 0, "λ‚΄μš©" )
        call ShowChart(c)
    endfunction
    private function main takes nothing returns nothing
        // λ©€ν‹°λ³΄λ“œ κ°œμ²΄λŠ” λ‘œλ”© 직후에 μƒμ„±λ˜κ±°λ‚˜ μ΄ˆκΈ°ν™”λ  수 μ—†μŠ΅λ‹ˆλ‹€.
        // (μ›Œν¬λž˜ν”„νŠΈ 결함)
        local trigger t = CreateTrigger()
        call TriggerRegisterTimerEvent(t,0.0,false)
        call TriggerAddAction(t,function AtLeast0sPassed)
        set t = null
    endfunction
endscope

//
// λ©”μ†Œλ“œ ν˜ΈμΆœμ„ 기반으둜 ν•œ chart 개체 μž‘μ—…
//
scope UsingChartWithMethod initializer main
    private function AtLeast0sPassed takes nothing returns nothing
        local chart c = chart.create()
        call c.setSize( 4, 4 )
        set c.title = "제λͺ©"
        call c.setStyles( false, true )
        call c.column(0).setStyles( true, true )
        set c.column(0).values = "κ°’"
        set c[0][0].value = "λ‚΄μš©"
        set c.visible = true
    endfunction
    private function main takes nothing returns nothing
        // λ©€ν‹°λ³΄λ“œ κ°œμ²΄λŠ” λ‘œλ”© 직후에 μƒμ„±λ˜κ±°λ‚˜ μ΄ˆκΈ°ν™”λ  수 μ—†μŠ΅λ‹ˆλ‹€.
        // (μ›Œν¬λž˜ν”„νŠΈ 결함)
        local trigger t = CreateTrigger()
        call TriggerRegisterTimerEvent(t,0.0,false)
        call TriggerAddAction(t,function AtLeast0sPassed)
        set t = null
    endfunction
endscope

λŒ€λ¬ΈμœΌλ‘œ