importonly struct BuffInfo
{
	import var buffID : TweakDBID;
	import var timeRemaining : Float;
	import var timeTotal : Float;
	import var stackCount : Uint32;
}

struct UIBuffInfo extends BuffInfo
{
	var isBuff : Bool;
}

importonly struct PlayerBioMonitor
{
	import var currentHealth : Int32;
	import var maximumHealth : Int32;
	import var currentCyberwarePct : Int32;
	import var currentArmor : Int32;
	import var maximumArmor : Int32;
}

importonly struct NPCNextToTheCrosshair
{
	import var npc : weak< GameObject >;
	import var name : String;
	import var currentHealth : Int32;
	import var maximumHealth : Int32;
	import var currentCyberwarePct : Int32;
	import var level : Int32;
	import var quickHackUpload : Int32;
	import var attitude : EAIAttitude;
	import var scanningState : gameScanningState;
	import var isTagged : Bool;
	import var highLevelState : gamedataNPCHighLevelState;
	import var canSeePlayer : Bool;
	import var playerDetectionAboveZero : Bool;
	import var playerDetectionAtMax : Bool;
}

import enum gameuiHitType
{
	Miss,
	Glance,
	Hit,
	CriticalHit,
	CriticalHit_x2,
}

import enum gameuiDamageDigitsMode
{
	Off,
	Individual,
	Accumulated,
	Both,
}

import enum gameuiDamageDigitsStickingMode
{
	None,
	Individual,
	Accumulated,
	Both,
}

import enum gameuiDamageIndicatorMode
{
	Off,
	DamageOnly,
	On,
}

import class DamageInfoUserData extends IScriptable
{
	replicated var flags : array< SHitFlag >;
	replicated var hitShapeType : EHitShapeType;
}

importonly struct DamageInfo
{
	import var hitPosition : Vector4;
	import var damageValue : Float;
	import var damageType : gamedataDamageType;
	import var hitType : gameuiHitType;
	import var entityHit : weak< GameObject >;
	import var instigator : weak< GameObject >;
	import var userData : DamageInfoUserData;
}

import enum gameKillType
{
	Normal,
	Defeat,
}

importonly struct KillInfo
{
	import var killerEntity : weak< GameObject >;
	import var victimEntity : weak< GameObject >;
	import var killType : gameKillType;
}

importonly struct ChatBoxText
{
	import var text : String;
	import var id : Int32;
	import var color : Color;
}

importonly struct NarrationEvent
{
	import var text : String;
	import var durationSec : Float;
	import var color : Color;
}

importonly struct NarrativePlateData
{
	import var text : String;
	import var caption : String;
	import var entity : weak< GameObject >;
}

