package isrun

import "sync"

/*
	Потокобезопасный признак запуска сражения
*/

type IsRun struct {
	val   bool
	block sync.RWMutex
}

func NewIsRun() *IsRun {
	return &IsRun{}
}

func (sf *IsRun) Get() bool {
	sf.block.RLock()
	defer sf.block.RUnlock()
	return sf.val
}
func (sf *IsRun) Set() {
	sf.block.Lock()
	defer sf.block.Unlock()
	sf.val = true
}

func (sf *IsRun) Reset() {
	sf.block.Lock()
	defer sf.block.Unlock()
	sf.val = false
}
