| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 |
- // package arena_build -- арена-строение (что-то производит, есть время производства)
- package arena_build
- import (
- . "gitp78su.ipnodns.ru/svi/kern"
- . "gitp78su.ipnodns.ru/svi/kern/krn/ktypes"
- . "wartank/app/lev0/alias"
- . "wartank/app/lev0/types"
- "wartank/app/lev1"
- "wartank/app/lev1/down_time"
- "wartank/app/lev2/arena"
- )
- // АренаСтроение -- арена-строение (что-то производит, есть время производства)
- type АренаСтроение struct {
- ИАрена
- времяОстат ИВремяОстат // Обратный отсчёт до окончания работы режима
- продуктВремя ISafeString
- продуктСейчас ИСтатПарам
- }
- // НовАренаСтроение -- возвращает новую арену-строение
- func НовАренаСтроение(конт ILocalCtx, аренаКонфиг arena.АренаКонфиг) *АренаСтроение {
- сам := &АренаСтроение{
- ИАрена: arena.НовАрена(конт, аренаКонфиг),
- времяОстат: down_time.НовВремОбрат(конт, 5),
- продуктВремя: NewSafeString(),
- продуктСейчас: lev1.НовСтатПарам("не задано"),
- }
- _ = ИАренаСтроение(сам)
- return сам
- }
- // ПродуктСейчас -- возвращает продукт, производимый сейчас
- func (сам *АренаСтроение) ПродуктСейчас() ИСтатПарам {
- return сам.продуктСейчас
- }
- // ОбратВремяУст -- устанавливает новое значение обратного счётчика времени
- func (сам *АренаСтроение) ОбратВремяУст(времяСек АВремя) {
- сам.времяОстат.Уст(времяСек)
- }
- // ВремяОстат -- объект оставшегося времени
- func (сам *АренаСтроение) ВремяОстат() ИВремяОстат {
- return сам.времяОстат
- }
- // ВремяОстат -- объект оставшегося времени
- func (сам *АренаСтроение) ПродуктВремяСейчас() ISafeString {
- сам.продуктВремя.Set(сам.времяОстат.String())
- return сам.продуктВремя
- }
|