EverambleGAME API / 1

CONTENT CONTRACT · VERSION 1

Effect

An explicit state change checked before an atomic handler commit.

Signature

{ count: PositiveCount, holder: ActorRef, item: ItemId, kind: "consume_item" } | { count: PositiveCount, holder: ActorRef, item: ItemId, kind: "grant_item" } | { amount: PositiveHitPoints, kind: "heal", target: ActorRef } | { from: Name, kind: "transition_quest", player: PlayerRef, quest: QuestId, to: Name } | { kind: "set_variable", value: StateValue, variable: VariableId } | { amount: PositiveCount, kind: "restore_need", need: Need, target: ActorRef } | { enabled: boolean, kind: "set_light", light: LightId, target: ActorRef } | { kind: "teleport", position: Position, target: ActorRef } | { kind: "notify", player: PlayerRef, text: TextKey } | { amount: PositiveHitPoints, damage_type: DamageTypeId, kind: "damage", target: ActorRef } | { duration_ticks: PositiveTicks, kind: "apply_status", status: StatusId, target: ActorRef } | { kind: "remove_status", status: StatusId, target: ActorRef } | { item: ItemId, kind: "equip", target: ActorRef } | { kind: "unequip", slot: EquipmentSlot, target: ActorRef } | { count: PositiveCount, item: ItemId, kind: "drop_item", position: Position } | { actor: ActorRef, count: PositiveCount, kind: "craft", recipe: RecipeId } | { definition: SpawnDefinitionId, kind: "spawn", position: Position, spawn_key: Name } | { kind: "despawn", target: ActorRef } | { kind: "move_to", movement: MovementId, position: Position, request_key: Name, target: ActorRef } | { duration_ticks: PositiveTicks, kind: "set_weather", map: MapRef, weather: WeatherId } | { day: Count, kind: "set_time", minute: DayMinute } | { dialogue: DialogueId, kind: "start_dialogue", npc: ActorRef, player: PlayerRef } | { cutscene: CutsceneId, kind: "play_cutscene", player: PlayerRef } | { animation: AnimationId, duration_ticks: PositiveTicks, kind: "play_animation", target: ActorRef } | { cue: AudioCueId, kind: "play_audio", position: Position } | { actor: ActorRef, kind: "build", position: Position, recipe: RecipeId, yaw_mdeg: Millidegrees } | { actor: ActorRef, kind: "repair", recipe: RecipeId, target: ActorRef } | { kind: "set_block", material: BlockMaterial, position: BlockPos } | { kind: "remove_block", position: BlockPos } | { delay_ticks: PositiveTicks, kind: "set_timer", timer: TimerId } | { kind: "cancel_timer", timer: TimerId } | { kind: "unlock_recipe", player: PlayerRef, recipe: RecipeId } | { kind: "set_routine", routine: RoutineId, target: ActorRef } | { behavior: BehaviorId, kind: "assign_behavior", target: ActorRef } | { amount: PositiveCount, kind: "grant_xp", player: PlayerRef, track: (ProgressTrackId)? } | { caster: ActorRef, damage: PositiveHitPoints, kind: "launch_projectile", projectile: ProjectileId } | { caster: ActorRef, damage: HitPoints, damage_type: DamageTypeId, inner_mm: Distance, kind: "area_effect", look: (FxId)?, radius_mm: PositiveDistance, shape: AreaShape, status: (StatusId)? }