| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798 |
- // package frm_bot_param -- фрейм параметров бота
- package frm_bot_param
- import (
- // "time"
- "time"
- . "gitp78su.ipnodns.ru/svi/kern"
- . "gitp78su.ipnodns.ru/svi/kern/krn/ktypes"
- tk "modernc.org/tk9.0"
- . "wartank/app/lev0/types"
- // "wartank/desktop/win_add_bot"
- // "wartank/desktop/win_main/frm_status"
- )
- type FrmBotParam struct {
- ctx IKernelCtx
- лблАтака *tk.TLabelWidget
- лблБроня *tk.TLabelWidget
- лблТочность *tk.TLabelWidget
- лблПрочность *tk.TLabelWidget
- лблМощь *tk.TLabelWidget
- // стрАтака string
- }
- func NewFrmBotParam(frmStateBot *tk.TFrameWidget) *FrmBotParam {
- sf := &FrmBotParam{
- ctx: GetKernelCtx(),
- }
- frmBotForce := frmStateBot.Frame(tk.Border(1), tk.Relief(tk.SUNKEN))
- tk.Pack(frmBotForce, tk.Side(tk.LEFT), tk.Fill(tk.FILL_Y))
- лблПараметрыБота := frmBotForce.Label(tk.Txt("Параметры"),
- tk.Background("#888"),
- tk.Border(1),
- tk.Relief(tk.GROOVE),
- )
- tk.Pack(лблПараметрыБота, tk.Side(tk.TOP), tk.Fill(tk.FILL_X))
- sf.лблАтака = frmBotForce.TLabel(tk.Txt("Атака"),
- tk.Border(1),
- tk.Relief(tk.GROOVE),
- )
- tk.Pack(sf.лблАтака, tk.Side(tk.TOP), tk.Fill(tk.FILL_X))
- sf.лблБроня = frmBotForce.TLabel(tk.Txt("Броня"),
- tk.Border(1),
- tk.Relief(tk.GROOVE),
- )
- tk.Pack(sf.лблБроня, tk.Side(tk.TOP), tk.Fill(tk.FILL_X))
- sf.лблТочность = frmBotForce.TLabel(tk.Txt("Точность"),
- tk.Border(1),
- tk.Relief(tk.GROOVE),
- )
- tk.Pack(sf.лблТочность, tk.Side(tk.TOP), tk.Fill(tk.FILL_X))
- sf.лблПрочность = frmBotForce.TLabel(tk.Txt("Прочность"),
- tk.Border(1),
- tk.Relief(tk.GROOVE),
- )
- tk.Pack(sf.лблПрочность, tk.Side(tk.TOP), tk.Fill(tk.FILL_X))
- sf.лблМощь = frmBotForce.TLabel(tk.Txt("Мощь"),
- tk.Border(1),
- tk.Relief(tk.GROOVE),
- )
- tk.Pack(sf.лблМощь, tk.Side(tk.TOP), tk.Fill(tk.FILL_X))
- sf.update()
- return sf
- }
- func (sf *FrmBotParam) update() {
- select {
- case <-sf.ctx.Ctx().Done():
- return
- default:
- farm := sf.ctx.Get("ботоФерма").Val().(ИБотоФерма)
- lstBot := farm.ListBot()
- if len(lstBot) > 0 {
- bot := lstBot[0]
- стрАтака := bot.Стата().Атака().ЗначСтр()
- sf.лблАтака.Configure(tk.Txt("Атака: " + стрАтака))
- стрБроня := bot.Стата().Броня().ЗначСтр()
- sf.лблБроня.Configure(tk.Txt("Броня: " + стрБроня))
- стрТочность := bot.Стата().Точность().ЗначСтр()
- sf.лблТочность.Configure(tk.Txt("Точность: " + стрТочность))
- стрПрочность := bot.Стата().Прочность().ЗначСтр()
- sf.лблПрочность.Configure(tk.Txt("Прочность: " + стрПрочность))
- стрМощь := bot.Стата().Мощь().ЗначСтр()
- sf.лблМощь.Configure(tk.Txt("Мощь: " + стрМощь))
- }
- }
- tk.TclAfter(time.Millisecond*250, sf.update)
- }
|