// package tank_stat -- статистика бота package tank_stat import ( . "wartank/app/lev0/types" "wartank/app/lev1/stat_param" ) // ТанкСтат -- статические параметры танка type ТанкСтат struct { конт ИБотКонтекст атака ИСтатПарам точность ИСтатПарам прочность ИСтатПарам броня ИСтатПарам power ИСтатПарам // Танковая мощь (может не совпадать по сумме, если есть усиление) усиление ИСтатПарам } // НовТанкСтат -- возвращает новый *TankStat func НовТанкСтат(конт ИБотКонтекст) *ТанкСтат { сам := &ТанкСтат{ конт: конт, атака: stat_param.НовСтатПарам("атака"), точность: stat_param.НовСтатПарам("точность"), прочность: stat_param.НовСтатПарам("прочность"), броня: stat_param.НовСтатПарам("броня"), power: stat_param.НовСтатПарам("мощь"), усиление: stat_param.НовСтатПарам("усиление"), } return сам } // Атака -- возвращает объект силы атаки func (сам *ТанкСтат) Атака() ИСтатПарам { return сам.атака } // Прочность -- возвращает объект прочности танка func (сам *ТанкСтат) Прочность() ИСтатПарам { return сам.броня } // Точность -- возвращает объект точности танка func (сам *ТанкСтат) Точность() ИСтатПарам { return сам.точность } // Броня -- возвращает объект брони танка func (сам *ТанкСтат) Броня() ИСтатПарам { return сам.прочность } // Мощь -- возвращает объект мощи танка func (сам *ТанкСтат) Мощь() ИСтатПарам { return сам.power } // Форсаж -- возвращает объект форсированного параметра func (сам *ТанкСтат) Форсаж() ИСтатПарам { return сам.усиление } // Форсаж -- возвращает объект форсированного параметра func (сам *ТанкСтат) ФорсажОбнов(парам string, знач int) { сам.усиление = stat_param.НовСтатПарам("усиление") сам.усиление.Уст(знач) }