package server

import (
	v "hackerbots.us/vector"
)

// Splosion embodies an explosion.
type Splosion struct {
	Id       string    `json:"id"`
	Position v.Point2d `json:"position"`
	Radius   int       `json:"radius"`
	Lifespan int       `json:"-"`
}

// Tick decrements the lifespan of said Splosion.
func (s *Splosion) Tick() {
	s.Lifespan--
}

// Alive determines if this Splosion is still relevant.
func (s *Splosion) Alive() bool {
	return s.Lifespan > 0
}
