UNPKG

@peacockproject/core

Version:

Type definitions for Peacock's core.

199 lines (198 loc) 6.34 kB
import { ClientToServerEvent, GameChanger, MissionManifestObjective, MissionType, RepositoryId, SecurityCameraStatus } from "./types"; import { EDeathContext } from "../eventHandler"; type RuntimeItem = { IsPerceivedAsWeapon?: boolean; InstanceId: string; ItemType: string; ItemName: string; RepositoryId: RepositoryId; OnlineTraits: string[]; Category: null; ActionRewardType: string; }; export type MatchOverC2SEvent = ClientToServerEvent<{ MyScore: number; OpponentScore: number; IsWinner: boolean; IsDraw: boolean; timerEnd: Date; }>; export type KillC2SEvent = ClientToServerEvent<{ RepositoryId: string; ActorId: number; ActorName: string; ActorType: number; KillType: number; KillContext: number; KillClass: string; Accident: boolean; WeaponSilenced: boolean; Explosive: boolean; ExplosionType: number; Projectile: boolean; Sniper: boolean; IsHeadshot: boolean; IsTarget: boolean; ThroughWall: boolean; BodyPartId: number; TotalDamage: number; IsMoving: boolean; RoomId: number; ActorPosition: string; HeroPosition: string; DamageEvents: string[]; PlayerId: number; OutfitRepositoryId: string; OutfitIsHitmanSuit: boolean; KillItemRepositoryId: string; KillItemInstanceId: string; KillItemCategory: string; KillMethodBroad: string; KillMethodStrict: string; EvergreenRarity?: number; IsReplicated?: boolean; History: unknown[]; }>; export type HeroSpawn_LocationC2SEvent = ClientToServerEvent<{ RepositoryId: RepositoryId; }>; export type ContractStartC2SEvent = ClientToServerEvent<{ Loadout: { RepositoryId: RepositoryId; InstanceId: string; OnlineTraits: string[]; Category?: null; }[]; Disguise: string; LocationId: string; GameChangers: GameChanger[]; ContractType: MissionType; DifficultyLevel: number; IsVR: boolean; IsHitmanSuit: boolean; SelectedCharacterId: string; }>; export type OpportunityEventsC2SEvent = ClientToServerEvent<{ RepositoryId: RepositoryId; Event: string; }>; export type StartingSuitC2SEvent = ClientToServerEvent<string>; export type IntroCutEndC2SEvent = ClientToServerEvent<string>; export type HoldingIllegalWeaponC2SEvent = ClientToServerEvent<{ IsHoldingIllegalWeapon: boolean; WeaponEquipped?: RuntimeItem; }>; export type SpottedC2SEvent = ClientToServerEvent<readonly string[]>; export type WitnessesC2SEvent = ClientToServerEvent<readonly string[]>; export type AmbientChangedC2SEvent = ClientToServerEvent<{ PreviousAmbientValue: number; AmbientValue: number; PreviousAmbient: string; Ambient: string; }>; export type DisguiseBlownC2SEvent = ClientToServerEvent<string>; export type Investigate_CuriousC2SEvent = ClientToServerEvent<{ ActorId: number; RepositoryId: RepositoryId; SituationType: string; EventType: string; JoinReason: string; InvestigationType: number; }>; export type ItemDestroyedC2SEvent = ClientToServerEvent<{ ItemName: string; }>; export type Level_Setup_EventsC2SEvent = ClientToServerEvent<{ Contract_Name_metricvalue?: string; Location_MetricValue?: string; Event_metricvalue: string; }>; export type PacifyC2SEvent = KillC2SEvent; export type MurderedBodySeenC2SEvent = ClientToServerEvent<{ Witness: string; /** `true` if the witness is a target */ IsWitnessTarget: boolean; DeadBody: { RepositoryId: RepositoryId; IsCrowdActor: false; DeathContext: EDeathContext; DeathType: number; }; }>; export type NoticedPacifiedC2SEvent = ClientToServerEvent<{ RepositoryId: RepositoryId; IsTarget: boolean; }>; export type NoticedKillC2SEvent = NoticedPacifiedC2SEvent; export type DeadBodySeenC2SEvent = ClientToServerEvent<string>; export type Hero_HealthC2SEvent = ClientToServerEvent<number>; export type OpportunityStageEventC2SEvent = ClientToServerEvent<{ RepositoryId: RepositoryId; Event: string; OpportunityStageID: string; }>; export type TrespassingC2SEvent = ClientToServerEvent<{ IsTrespassing: boolean; RoomId: number; }>; export type AllPacifiedHiddenC2SEvent = ClientToServerEvent<string>; export type DumpInOceanC2SEvent = ClientToServerEvent<{ RepositoryId: RepositoryId; }>; export type ItemPickedUpC2SEvent = ClientToServerEvent<Readonly<RuntimeItem>>; export type CrowdEvacuationC2SEvent = ClientToServerEvent<string>; export type Unnoticed_KillC2SEvent = ClientToServerEvent<{ RepositoryId: RepositoryId; IsTarget: boolean; }>; export type ObjectiveCompletedC2SEvent = ClientToServerEvent<{ Id: string; Type: MissionManifestObjective["Type"]; Category: MissionManifestObjective["Category"]; ExcludeFromScoring: boolean; }>; export type SecuritySystemRecorderC2SEvent = ClientToServerEvent<{ event: SecurityCameraStatus; recorder: number; }>; export type ActorTaggedC2SEvent = ClientToServerEvent<{ RepositoryId: RepositoryId; Tagged: boolean; }>; export type ItemDroppedC2SEvent = ClientToServerEvent<RuntimeItem>; export type SetpiecesC2SEvent = ClientToServerEvent<{ RepositoryId: RepositoryId; name_metricvalue: string | "NotAvailable" | "HideBody"; setpieceHelper_metricvalue: string; setpieceType_metricvalue: "trap" | "BodyContainer" | string; toolUsed_metricvalue: "Exploded" | "NA" | string; Item_triggered_metricvalue: "NotAvailable" | string; Position: { x: number; y: number; z: number; }; }>; export type DoorUnlockedC2SEvent = ClientToServerEvent<string>; export type EvidenceHiddenC2SEvent = ClientToServerEvent<"Body" | string>; export type BodyHiddenC2SEvent = ClientToServerEvent<{ ActorId: number; RepositoryId: RepositoryId; ActorName: string; }>; export type AreaDiscoveredC2SEvent = ClientToServerEvent<{ RepositoryId: RepositoryId; }>; export type Dart_HitC2SEvent = ClientToServerEvent<{ IsTarget: boolean; RepositoryId: RepositoryId; ActorType: number; Sedative: "" | string; }>; export type Evergreen_Payout_DataC2SEvent = ClientToServerEvent<{ Total_Payout: number; }>; export type OpponentsC2sEvent = ClientToServerEvent<{ ConnectedSessions: string[]; }>; export {};