| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768 |
- // 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.НовСтатПарам("усиление")
- сам.усиление.Уст(знач)
- }
|