analyzer

package
v0.0.0-...-bd0fe52 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 28, 2021 License: GPL-3.0 Imports: 20 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var ErrChanFull = errors.New("chan analyzer is full")

ErrChanFull chan is full

View Source
var ErrCouldNotShutdown = errors.New("could not shutdown analyzer")

ErrCouldNotShutdown could not shutdown analyzer

Functions

This section is empty.

Types

type Analyzer

type Analyzer struct {
	// contains filtered or unexported fields
}

Analyzer stores the games it has to analyze

func NewAnalyzer

func NewAnalyzer(db *gorm.DB, logAnalyzer *custlogger.Logger, version int64) *Analyzer

NewAnalyzer constructor of Analyzer

func Start

func Start(db *gorm.DB, logAnalyzer *custlogger.Logger, version int64) (*Analyzer, error)

Start starts this worker

func (*Analyzer) AddDataAnalyzer

func (a *Analyzer) AddDataAnalyzer(demoIDs []int64) error

AddDataAnalyzer add data to be analyzed

func (*Analyzer) CheckForEver

func (a *Analyzer) CheckForEver()

CheckForEver this check if new demo need to be analyzed

func (*Analyzer) CheckOutAnalyzed

func (a *Analyzer) CheckOutAnalyzed() error

CheckOutAnalyzed at the start of the analyzer, check if their is demo to (re)analyze or not

func (*Analyzer) ComputeGrenadesCurrentFrame

func (a *Analyzer) ComputeGrenadesCurrentFrame(
	grenadesAnalyzer []*modelanalyzer.Grenade,
	mapName string,
) []*model.Grenade

ComputeGrenadesCurrentFrame register every grenades positions for the current frame

func (*Analyzer) ComputePlayersCardCurrentFrame

func (a *Analyzer) ComputePlayersCardCurrentFrame(
	playersEvent map[uint64]*modelanalyzer.PlayerEvent,
	mapName string,
) []*model.PlayerCard

ComputePlayersCardCurrentFrame register every players data for the current frame

func (*Analyzer) ComputePlayersPositionsCurrentFrame

func (a *Analyzer) ComputePlayersPositionsCurrentFrame(
	playersEvent map[uint64]*modelanalyzer.PlayerEvent,
	mapName string,
) []*model.PlayerPositions

ComputePlayersPositionsCurrentFrame register every players positions for the current frame

func (*Analyzer) ConvertRounds

func (a *Analyzer) ConvertRounds(game *modelanalyzer.Game) []*model.Round

ConvertRounds convert the rounds of the game to fit in the DB

func (*Analyzer) HandleShoots

func (a *Analyzer) HandleShoots(event modelanalyzer.EventAnalyzer, frames []*modelanalyzer.Frame, numFrame int)

HandleShoots to register the number of shoots in this frame or the next

func (*Analyzer) ParseOneGame

func (a *Analyzer) ParseOneGame(data DataAnalyzer)

ParseOneGame start to analyze one game

func (*Analyzer) SaveStatesGrenades

func (a *Analyzer) SaveStatesGrenades(frames []*modelanalyzer.Frame, numFrame int)

SaveStatesGrenades save the highest state of a grenade for the next frame if this one isn't displayed

func (*Analyzer) Shutdown

func (a *Analyzer) Shutdown()

Shutdown shutdown analyzer

type DataAnalyzer

type DataAnalyzer struct {
	// contains filtered or unexported fields
}

DataAnalyzer data send to be analyzed

type Parser

type Parser struct {
	DemoID           int64
	ParserDemoinfocs demoinfocs.Parser

	Game *modelanalyzer.Game
	// contains filtered or unexported fields
}

Parser type to parse the game

func (*Parser) AddFrame

func (p *Parser) AddFrame(event modelanalyzer.EventAnalyzer, addPositions, addPlayersCard bool)

AddFrame add a frame to the current round

func (*Parser) ComputeMatchEnded

func (p *Parser) ComputeMatchEnded()

ComputeMatchEnded catch the event when the match ended

func (*Parser) ComputeMatchStarted

func (p *Parser) ComputeMatchStarted()

ComputeMatchStarted event on MatchStarted

func (*Parser) ComputePlayerConnect

func (p *Parser) ComputePlayerConnect()

ComputePlayerConnect event on PlayerConnect

func (*Parser) ComputePlayerFlashed

func (p *Parser) ComputePlayerFlashed()

ComputePlayerFlashed event on PlayerFlashed

func (*Parser) ComputePlayerHurt

func (p *Parser) ComputePlayerHurt()

ComputePlayerHurt event on PlayerHurt

func (*Parser) ComputeRoundStart

func (p *Parser) ComputeRoundStart()

ComputeRoundStart event on RoundStart

func (*Parser) ComputeTeamScore

func (p *Parser) ComputeTeamScore()

ComputeTeamScore changes the score when it changes

func (*Parser) ComputeTeamSideSwitch

func (p *Parser) ComputeTeamSideSwitch()

ComputeTeamSideSwitch event on TeamSideSwitch

func (*Parser) EventWeaponFire

func (p *Parser) EventWeaponFire()

EventWeaponFire event on WeaponFire

func (*Parser) EventsItemDrop

func (p *Parser) EventsItemDrop()

EventsItemDrop register when player drop something

func (*Parser) EventsItemPickup

func (p *Parser) EventsItemPickup()

EventsItemPickup register when player buy

func (*Parser) EventsRoundBombPlanted

func (p *Parser) EventsRoundBombPlanted()

EventsRoundBombPlanted register the event when the bombe has been planted

func (*Parser) EventsRoundBombeDefused

func (p *Parser) EventsRoundBombeDefused()

EventsRoundBombeDefused register the event when the round ends with the bomb defused

func (*Parser) EventsRoundBombeExplode

func (p *Parser) EventsRoundBombeExplode()

EventsRoundBombeExplode register the event when the round ends with the bomb explode

func (*Parser) EventsRoundEndedTimeOut

func (p *Parser) EventsRoundEndedTimeOut()

EventsRoundEndedTimeOut register the event when the round ends with timeout

func (*Parser) EventsRoundFreezetimeEnd

func (p *Parser) EventsRoundFreezetimeEnd()

EventsRoundFreezetimeEnd register the event when the freeze time ends

func (*Parser) EventsRoundKills

func (p *Parser) EventsRoundKills()

EventsRoundKills store the event of a kill, with the weapon, killer, killed, time, position

func (*Parser) GetAllGrenadesIG

func (p *Parser) GetAllGrenadesIG() []*modelanalyzer.Grenade

GetAllGrenadesIG return all the grandes of the game

func (*Parser) GetAllPlayerPlaying

func (p *Parser) GetAllPlayerPlaying() map[uint64]*modelanalyzer.PlayerEvent

GetAllPlayerPlaying store in a map all players for an instant

func (*Parser) GetMessages

func (p *Parser) GetMessages()

GetMessages register every messages

func (*Parser) GetPlayerCarrierSteamIDBomb

func (p *Parser) GetPlayerCarrierSteamIDBomb() string

GetPlayerCarrierSteamIDBomb return the steamID of the carrier of the bomb if no one is carrying the bomb, return ""

func (*Parser) GetRank

func (p *Parser) GetRank()

GetRank get the ranks if the players

func (*Parser) LastFrameShootPlayer

func (p *Parser) LastFrameShootPlayer(attackerSteamID uint64) int

LastFrameShootPlayer return the last frame the player shot

func (*Parser) Parse

func (p *Parser) Parse()

Parse analyze one game

func (*Parser) RegisterGrenadesEvents

func (p *Parser) RegisterGrenadesEvents()

RegisterGrenadesEvents register all the grenades events we need

func (*Parser) StorePositionsPlayers

func (p *Parser) StorePositionsPlayers()

StorePositionsPlayers every second, store the position of all the players

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL