eventsystem

package
v0.0.0-...-2f8f7b3 Latest Latest
Warning

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

Go to latest
Published: Apr 2, 2022 License: MIT Imports: 1 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type EnemyKilledSubject

type EnemyKilledSubject struct {
	EventSubject
}

func (*EnemyKilledSubject) SetParams

func (s *EnemyKilledSubject) SetParams(params ...interface{})

type EnemyKilledTask

type EnemyKilledTask struct {
	EventObserver
}

某一类任务

func (*EnemyKilledTask) Update

func (e *EnemyKilledTask) Update()

type EnemyKilledUI

type EnemyKilledUI struct {
	EventObserver
}

func (*EnemyKilledUI) Update

func (e *EnemyKilledUI) Update()

type Event

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

func NewEvent

func NewEvent() *Event

func (*Event) NotifySubject

func (e *Event) NotifySubject(eventType EventType, params ...interface{})

func (*Event) RegisterObserver

func (e *Event) RegisterObserver(eventType EventType, observer IEventObserver)

func (*Event) Release

func (e *Event) Release()

type EventObserver

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

func (*EventObserver) SetSubject

func (e *EventObserver) SetSubject(subject IEventSubject)

func (*EventObserver) Update

func (e *EventObserver) Update()

type EventSubject

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

func (*EventSubject) Attach

func (s *EventSubject) Attach(observer IEventObserver)

func (*EventSubject) Detach

func (s *EventSubject) Detach(observer IEventObserver)

func (*EventSubject) GetCount

func (s *EventSubject) GetCount() int

func (*EventSubject) GetParams

func (s *EventSubject) GetParams() []interface{}

func (*EventSubject) Notify

func (s *EventSubject) Notify()

func (*EventSubject) SetParams

func (s *EventSubject) SetParams(params ...interface{})

type EventType

type EventType int
const (
	ET_Unknown       EventType = 0
	ET_Login         EventType = 1 // 玩家登录进入游戏
	ET_Logout        EventType = 2 // 玩家退出游戏
	ET_EnemyKilled   EventType = 3 //
	ET_SoldierKilled EventType = 4 //
)

type IEvent

type IEvent interface {
	Release()
	RegisterObserver(eventType EventType, observer IEventObserver)
	NotifySubject(eventType EventType, params ...interface{})
}

type IEventObserver

type IEventObserver interface {
	Update()
	SetSubject(subject IEventSubject)
}

func NewEnemyKilledTask

func NewEnemyKilledTask() IEventObserver

func NewEnemyKilledUI

func NewEnemyKilledUI() IEventObserver

func NewEventObserver

func NewEventObserver() IEventObserver

type IEventSubject

type IEventSubject interface {
	Attach(observer IEventObserver)
	Detach(observer IEventObserver)
	Notify()
	SetParams(params ...interface{})
	GetParams() []interface{}
	GetCount() int
}

func NewEnemyKilledSubject

func NewEnemyKilledSubject() IEventSubject

func NewEventSubject

func NewEventSubject() IEventSubject

func NewLoginSubject

func NewLoginSubject() IEventSubject

func NewLogoutSubject

func NewLogoutSubject() IEventSubject

func NewSoldierKilledSubject

func NewSoldierKilledSubject() IEventSubject

type LoginSubject

type LoginSubject struct {
	EventSubject
}

type LogoutSubject

type LogoutSubject struct {
	EventSubject
}

type SouldierKilledSubject

type SouldierKilledSubject struct {
	EventSubject
}

func (*SouldierKilledSubject) SetParams

func (s *SouldierKilledSubject) SetParams(params ...interface{})

Jump to

Keyboard shortcuts

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