Difference between revisions of "Script/LogicEnums"
(→EUIEvent) |
|||
(26 intermediate revisions by 2 users not shown) | |||
Line 62: | Line 62: | ||
Completed | Completed | ||
Remains | Remains | ||
+ | |||
+ | ==EBuildingProduction== | ||
+ | Upgrade | ||
+ | Technology | ||
+ | Unit | ||
+ | Resource | ||
+ | Action | ||
+ | Spell | ||
==ECreatureType== | ==ECreatureType== | ||
Line 99: | Line 107: | ||
IdleCry | IdleCry | ||
IdlePray | IdlePray | ||
+ | IdleSleep | ||
+ | InfectedLying01 | ||
+ | InfectedLying02 | ||
+ | InfectedLying03 | ||
+ | InfectedSitting01 | ||
+ | InfectedSitting02 | ||
+ | InfectedSitting03 | ||
WalkSlow | WalkSlow | ||
+ | WalkSlowLeft | ||
+ | WalkSlowRight | ||
Walk | Walk | ||
+ | WalkLeft | ||
+ | WalkRight | ||
Run | Run | ||
+ | RunLeft | ||
+ | RunRight | ||
Carry | Carry | ||
CarrySack | CarrySack | ||
CarryShoulder | CarryShoulder | ||
+ | RotateLeft | ||
+ | RotateRight | ||
Build | Build | ||
Chop | Chop | ||
Line 114: | Line 137: | ||
Drop | Drop | ||
Attack | Attack | ||
− | |||
AttackPunch | AttackPunch | ||
AttackSword | AttackSword | ||
Line 124: | Line 146: | ||
AttackBow | AttackBow | ||
AttackCrossbow | AttackCrossbow | ||
+ | AttackSpear | ||
AttackMassive | AttackMassive | ||
KnockdownShortFront | KnockdownShortFront | ||
Line 151: | Line 174: | ||
CastSpecial09 | CastSpecial09 | ||
CastSpecial10 | CastSpecial10 | ||
+ | Warcry | ||
+ | Feint | ||
+ | ShieldBash | ||
+ | CallToArms | ||
+ | Trap | ||
TalkCalm | TalkCalm | ||
TalkExcited | TalkExcited | ||
Line 160: | Line 188: | ||
ListenWounded | ListenWounded | ||
HelpUp | HelpUp | ||
+ | Stunned | ||
+ | CastSpecial11 | ||
+ | CastSpecial12 | ||
+ | CastSpecial13 | ||
+ | CastSpecial14 | ||
+ | CastSpecial15 | ||
+ | CastSpecial16 | ||
+ | CastSpecial17 | ||
+ | CastSpecial18 | ||
+ | CastSpecial19 | ||
+ | CastSpecial20 | ||
+ | StaggerBack | ||
+ | Throw | ||
+ | DestroyRune | ||
+ | Disagree | ||
+ | Salute | ||
+ | Cheering | ||
+ | Examine | ||
+ | Take | ||
+ | Give | ||
+ | Loot | ||
+ | Preach | ||
+ | PrayStanding | ||
+ | PrayKneeling | ||
+ | Recover | ||
+ | GazeDistance | ||
+ | Pant | ||
+ | Desperate | ||
+ | BoundPole | ||
+ | TouchForgeEnter | ||
+ | TouchForgeLoop | ||
+ | BleedingOutLoop | ||
+ | BleedingOutDie | ||
+ | BoundOnKneesEnter | ||
+ | BoundOnKneesLoop | ||
+ | BoundOnKneesExit | ||
+ | KneelEnter | ||
+ | KneelLoop | ||
+ | KneelExit | ||
+ | SleepEnter | ||
+ | SleepLoop | ||
+ | SleepExit | ||
+ | CastEnter | ||
+ | CastLoop | ||
+ | CastExit | ||
+ | FloatingEnter | ||
+ | FloatingLoop | ||
+ | FloatingExit | ||
+ | TrapSoulEnter | ||
+ | TrapSoulLoop | ||
+ | TrapSoulExit | ||
+ | SoulRipped | ||
+ | JoinConsciousness | ||
+ | CoverFace | ||
+ | Weep | ||
+ | LeanAgainstWall | ||
+ | ScreamEnter | ||
+ | Scream | ||
+ | ScreamExit | ||
+ | ScreamExitLoop | ||
+ | ScreamStandup | ||
+ | TalkAngry | ||
+ | ListenAngry | ||
+ | TalkGossip | ||
+ | ListenGossip | ||
+ | TalkSad | ||
+ | ListenSad | ||
+ | TalkAnnoyed | ||
+ | ListenAnnoyed | ||
+ | Apathy | ||
+ | FrightenedEnter | ||
+ | FrightenedLoop | ||
+ | FrightenedExit | ||
+ | KneelingShockedEnter | ||
+ | KneelingShockedLoop | ||
+ | KneelingShockedExit | ||
+ | TalkScared | ||
+ | ListenScared | ||
+ | WalkBound | ||
+ | IdleBound | ||
+ | StasisGrip | ||
+ | DeathByMask | ||
+ | ActivateAmulet | ||
+ | Sacrificing | ||
+ | LeanOnAltar | ||
+ | ChargeScream | ||
None | None | ||
+ | |||
+ | ==ECreatureCommand== | ||
+ | NewSelection | ||
+ | AddToSelection | ||
+ | Move | ||
+ | Stop | ||
+ | HoldPosition | ||
+ | AttackPosition | ||
+ | AttackEntity | ||
+ | BombPosition | ||
+ | SpellPosition | ||
+ | SpellEntity | ||
+ | Die | ||
+ | BuildSectorCenter | ||
+ | Interact | ||
+ | Teleport | ||
+ | MoveFormation | ||
+ | Approach | ||
+ | DirectControl | ||
+ | DemolishSectorCenter | ||
+ | WaitForHeroes | ||
+ | FollowPath | ||
+ | FollowCreature | ||
+ | Patrol | ||
==ERace== | ==ERace== | ||
Line 223: | Line 361: | ||
Talk // A hero talks to another character | Talk // A hero talks to another character | ||
Trade // A hero opens a trader's trade window | Trade // A hero opens a trader's trade window | ||
+ | TradeEnded // A hero closes a trader's trade window | ||
Switch // A hero interacts with a switch | Switch // A hero interacts with a switch | ||
Examine // A hero interacts with any other object type | Examine // A hero interacts with any other object type | ||
Line 248: | Line 387: | ||
HeroLeft // A hero has left the party | HeroLeft // A hero has left the party | ||
HeroAttacking // Any hero is attacking the creature or building _sTargetName (or anything, if _sTargetName is empty) | HeroAttacking // Any hero is attacking the creature or building _sTargetName (or anything, if _sTargetName is empty) | ||
+ | HeroSummonedCreatures// Any hero has summoned creatures via spell | ||
AbilityPointsGained // Any hero has gained ability points | AbilityPointsGained // Any hero has gained ability points | ||
AttributePointsGained// Any hero has gained attribute points | AttributePointsGained// Any hero has gained attribute points | ||
SpellUnlocked // A hero has learned a new spell | SpellUnlocked // A hero has learned a new spell | ||
PerkUnlocked // A hero has gained a new perk | PerkUnlocked // A hero has gained a new perk | ||
+ | ArchfireUnlocked // A hero has unlocked archfire | ||
QuestStarted // The hero party has received a new quest | QuestStarted // The hero party has received a new quest | ||
QuestUpdated // A quest in the hero party's journal has been updated (task activated/completed/failed) | QuestUpdated // A quest in the hero party's journal has been updated (task activated/completed/failed) | ||
Line 257: | Line 398: | ||
QuestFailed // The hero party has failed to complete a quest | QuestFailed // The hero party has failed to complete a quest | ||
HeroRevivePeriodEnded// The player failed to revive a downed party member in time which must now be revived at a godstone | HeroRevivePeriodEnded// The player failed to revive a downed party member in time which must now be revived at a godstone | ||
+ | DialogueStarted // One of the hoeries in the party initiated a dialogue | ||
+ | LeavingMap // The hero party is about to leave the current map | ||
+ | |||
+ | '''NOTE''': For all ''CanSee''/''CannotSee'' and ''InAggroRange''/''OutsideAggroRange'' event types, _sParam may optionally be set to the value ''"Enemy"''. This will cause the event to be triggered for any enemy creature or building in range. | ||
==EInventoryEvent== | ==EInventoryEvent== | ||
Line 267: | Line 412: | ||
Equipped | Equipped | ||
Unequipped | Unequipped | ||
+ | Used | ||
+ | Consumed | ||
==ECreatureEvent== | ==ECreatureEvent== | ||
Line 280: | Line 427: | ||
EnteredAggroRange // triggers once the target creature comes within aggro range of the creature or building specified by _sParam | EnteredAggroRange // triggers once the target creature comes within aggro range of the creature or building specified by _sParam | ||
LeftAggroRange // triggers once the target creature is no longer in aggro range of the creature or building specified by _sParam | LeftAggroRange // triggers once the target creature is no longer in aggro range of the creature or building specified by _sParam | ||
+ | RevivePeriodEnded // triggers once the target creature has died and it's bleedout timer has run out | ||
+ | SummonedCreatures // triggers when the target creature has summoned one or more creatures via spell | ||
FollowPathWait // triggers once the target creature stops to wait for the hero party during a follow path command | FollowPathWait // triggers once the target creature stops to wait for the hero party during a follow path command | ||
FollowPathResume // triggers once the target creature resumes after waiting for the hero party during a follow path command | FollowPathResume // triggers once the target creature resumes after waiting for the hero party during a follow path command | ||
FollowPathFinished // triggers once the target creature has finished following its assigned path | FollowPathFinished // triggers once the target creature has finished following its assigned path | ||
+ | GoToFinished // triggers once the target creature has finished a GoTo/Move command | ||
TimedActionFinished // triggers once the target creature has successfully finished a timed action | TimedActionFinished // triggers once the target creature has successfully finished a timed action | ||
TimedActionCanceled // triggers once a timed action performed by the target creature has been canceled prematurely | TimedActionCanceled // triggers once a timed action performed by the target creature has been canceled prematurely | ||
+ | |||
+ | '''NOTE''': For the even types ''CanSee'', ''CannotSee'', ''EnteredAggroRange'' and ''LeftAggroRange'', _sParam may optionally be set to the value ''"Enemy"''. This will cause the event to be triggered for any enemy creature or building in range. | ||
==EBuildingEvent== | ==EBuildingEvent== | ||
Line 293: | Line 445: | ||
Charging | Charging | ||
Charged | Charged | ||
− | ProductionStarted | + | ProductionStarted // Extended event parameter: Name of produced assignment |
− | ProducationStalled | + | ProducationStalled // Extended event parameter: Name of produced assignment |
− | ProductionFinished | + | ProductionFinished // Extended event parameter: Name of produced assignment |
+ | ProductionCanceled // Extended event parameter: Name of produced assignment | ||
WorkerAssignmentChanged | WorkerAssignmentChanged | ||
OwnerChanged | OwnerChanged | ||
− | GodstonePortalChanged | + | GodstonePortalChanged // Extended event parameter: Script name of target godstone |
==EBuildingCreatureEvent== | ==EBuildingCreatureEvent== | ||
CreaturesSpawned // Triggered when creatures are spawned by a building | CreaturesSpawned // Triggered when creatures are spawned by a building | ||
− | == | + | ==ELogicObjectEvent== |
Looted // Triggered whenever one or more items are removed from an item container | Looted // Triggered whenever one or more items are removed from an item container | ||
AllLooted // Triggered once the last item has been removed from an item container | AllLooted // Triggered once the last item has been removed from an item container | ||
Unlocked // Triggered once a locked object has been unlocked | Unlocked // Triggered once a locked object has been unlocked | ||
+ | LootDropped // Triggered when a lootable object has been dropped by a creature | ||
==ESectorEvent== | ==ESectorEvent== | ||
Line 319: | Line 473: | ||
==EUIEvent== | ==EUIEvent== | ||
EntitySelected | EntitySelected | ||
− | |||
− | |||
PlayerMarker | PlayerMarker | ||
CharacterCreatorClosed | CharacterCreatorClosed | ||
CutsceneFinished | CutsceneFinished | ||
+ | VideoFinished | ||
+ | BuildModeEntered | ||
+ | FinalChoiceApproved | ||
+ | FinalChoiceCanceled | ||
==EUIWindow== | ==EUIWindow== | ||
Line 332: | Line 488: | ||
PartyAbilities | PartyAbilities | ||
QuestJournal | QuestJournal | ||
− | + | ArchfireSelection | |
+ | FinalChoice | ||
==EQuestState== | ==EQuestState== | ||
Line 366: | Line 523: | ||
==EItemProperty== | ==EItemProperty== | ||
+ | BlueprintUpgrade | ||
Blueprint | Blueprint | ||
QuestItem | QuestItem |
Latest revision as of 16:15, 14 May 2020
Contents
[hide]- 1 EEntityType
- 2 EDamageType
- 3 EResource
- 4 EBuildingType
- 5 EBuildingStage
- 6 EBuildingProduction
- 7 ECreatureType
- 8 ECreatureAttribute
- 9 ECreatureAnimation
- 10 ECreatureCommand
- 11 ERace
- 12 ELogicObjectType
- 13 EFactionRelation
- 14 EItemSlot
- 15 ECreatureEquipMode
- 16 ECreatureUnequipMode
- 17 EBuildingCustomState
- 18 EHeroPartyEvent
- 19 EInventoryEvent
- 20 ECreatureInventoryEvent
- 21 ECreatureEvent
- 22 EBuildingEvent
- 23 EBuildingCreatureEvent
- 24 ELogicObjectEvent
- 25 ESectorEvent
- 26 EFollowPathWaitMode
- 27 EUIEvent
- 28 EUIWindow
- 29 EQuestState
- 30 ESoundTrack
- 31 EAIFlag
- 32 EItemProperty
EEntityType
Static Creature Building Effect ResourceDeposit LogicObject Invalid
EDamageType
Pierce Slash Blunt Thrust Crush Siege Fire Ice Air White Black Arcane Irresistible Undefined
EResource
Types of RTS resources in the game.
Wood Planks Stone Brick IronOre Iron IronBar BlackAsh BlackAshPackage BlackAshPotion Fish Meat Food Lenya LenyaPackage LenyaEssence Aria AriaCask DistilledAria None
EBuildingType
Default SectorCenter ResourceCollector ResourceProducer UnitProducer Sentry CreepSpawn Charge
EBuildingStage
Planned Construction Completed Remains
EBuildingProduction
Upgrade Technology Unit Resource Action Spell
ECreatureType
Character Summon Unit Mob Animal Worker Founder
ECreatureAttribute
Strength Dexterity Intelligence Constitution Willpower
ECreatureAnimation
Idle IdleAlerted IdleCombat IdleShoulder IdleResting01 IdleResting02 IdleResting03 IdleResting04 IdleSweep IdleCleanvase IdleLookout IdleSitting IdleBench IdleGround IdleDrunkStanding IdleArguingAgg IdleArguingDef IdleCry IdlePray IdleSleep InfectedLying01 InfectedLying02 InfectedLying03 InfectedSitting01 InfectedSitting02 InfectedSitting03 WalkSlow WalkSlowLeft WalkSlowRight Walk WalkLeft WalkRight Run RunLeft RunRight Carry CarrySack CarryShoulder RotateLeft RotateRight Build Chop Dig Crop Gut Fish PickUp Drop Attack AttackPunch AttackSword AttackDualWield AttackTwoHandedPolearm AttackTwoHandedSword AttackTwoHandedAxe AttackTwoHandedStaff AttackBow AttackCrossbow AttackSpear AttackMassive KnockdownShortFront KnockdownShortBack KnockdownFarFront KnockdownFarBack StandUpFront StandUpBack Hit Die Resurrection Spawn CastInstantSelf CastInstantEnemy CastShortSelf CastShortEnemy CastLongSelf CastLongEnemy CastSpecial01 CastSpecial02 CastSpecial03 CastSpecial04 CastSpecial05 CastSpecial06 CastSpecial07 CastSpecial08 CastSpecial09 CastSpecial10 Warcry Feint ShieldBash CallToArms Trap TalkCalm TalkExcited ListenCalm ListenExcited TalkDying ListenDying TalkWounded ListenWounded HelpUp Stunned CastSpecial11 CastSpecial12 CastSpecial13 CastSpecial14 CastSpecial15 CastSpecial16 CastSpecial17 CastSpecial18 CastSpecial19 CastSpecial20 StaggerBack Throw DestroyRune Disagree Salute Cheering Examine Take Give Loot Preach PrayStanding PrayKneeling Recover GazeDistance Pant Desperate BoundPole TouchForgeEnter TouchForgeLoop BleedingOutLoop BleedingOutDie BoundOnKneesEnter BoundOnKneesLoop BoundOnKneesExit KneelEnter KneelLoop KneelExit SleepEnter SleepLoop SleepExit CastEnter CastLoop CastExit FloatingEnter FloatingLoop FloatingExit TrapSoulEnter TrapSoulLoop TrapSoulExit SoulRipped JoinConsciousness CoverFace Weep LeanAgainstWall ScreamEnter Scream ScreamExit ScreamExitLoop ScreamStandup TalkAngry ListenAngry TalkGossip ListenGossip TalkSad ListenSad TalkAnnoyed ListenAnnoyed Apathy FrightenedEnter FrightenedLoop FrightenedExit KneelingShockedEnter KneelingShockedLoop KneelingShockedExit TalkScared ListenScared WalkBound IdleBound StasisGrip DeathByMask ActivateAmulet Sacrificing LeanOnAltar ChargeScream None
ECreatureCommand
NewSelection AddToSelection Move Stop HoldPosition AttackPosition AttackEntity BombPosition SpellPosition SpellEntity Die BuildSectorCenter Interact Teleport MoveFormation Approach DirectControl DemolishSectorCenter WaitForHeroes FollowPath FollowCreature Patrol
ERace
Human Elf Dwarf Orc DarkElf Goblin Troll Wildlife Demon Undead Archfire Golem IronOne Dragonoid Medusa None
ELogicObjectType
Container NavBlocker Switch QuestMarker
EFactionRelation
Allied Hostile Neutral
EItemSlot
None PrimaryHand SecondaryHand Head Neck Torso Ring1 Ring2 Holster Item
ECreatureEquipMode
Give // Give item to creature. If a previous item was equipped, move it to inventory. FromInventory // Take item to equip from inventory. Do nothing if the item is not in the inventory. If a previous item was equipped, move to inventory. Replace // Replace item in given slot, effectively destroying the currently equipped item.
ECreatureUnequipMode
Remove // Remove the item from the given slot, effectively destroying it. AddToInventory // Add the unequipped item to the party inventory. Drop // Drop the unequipped item at the creature's feet.
EBuildingCustomState
Script1 Script2 Script3
EHeroPartyEvent
Event types which may be triggered by the hero party.
Loot // A hero opens a loot container Talk // A hero talks to another character Trade // A hero opens a trader's trade window TradeEnded // A hero closes a trader's trade window Switch // A hero interacts with a switch Examine // A hero interacts with any other object type Interact // Triggered by any interaction of a hero, including all of the above. Killed // A hero is killed Wiped // All heroes are dead simultaneously LevelUp // The hero party gains a new level AllInside // The entire hero party is within a given trigger AllOutside // The entire hero party is outside a given trigger AnyInside // Any party member enters a given trigger AnyOutside // Any party member leaves a given trigger AllInsideSector // The entire hero party is within a given sector AllOutsideSector // The entire hero party is outside a given sector AnyInsideSector // Any party member enters a given sector AnyOutsideSector // Any party member leaves a given sector AnyCanSee // Any party member can see the creature or building _sTargetName AnyCannotSee // Any party member can no longer see the creature or building _sTargetName AllCanSee // The entire party can see the creature or building _sTargetName AllCannotSee // No party member can see the creature or building _sTargetName AnyInAggroRange // Any party member is in aggro range of the creature or building _sTargetName AnyOutsideAggroRange // Any party member is no longer in aggro range of the creature or building _sTargetName AllInAggroRange // The entire party is in aggro range of the creature or building _sTargetName AllOutsideAggroRange // No party member is in aggro range of the creature or building _sTargetName HeroJoined // A new hero has joined the party HeroLeft // A hero has left the party HeroAttacking // Any hero is attacking the creature or building _sTargetName (or anything, if _sTargetName is empty) HeroSummonedCreatures// Any hero has summoned creatures via spell AbilityPointsGained // Any hero has gained ability points AttributePointsGained// Any hero has gained attribute points SpellUnlocked // A hero has learned a new spell PerkUnlocked // A hero has gained a new perk ArchfireUnlocked // A hero has unlocked archfire QuestStarted // The hero party has received a new quest QuestUpdated // A quest in the hero party's journal has been updated (task activated/completed/failed) QuestCompleted // The hero party has successfully completed a quest QuestFailed // The hero party has failed to complete a quest HeroRevivePeriodEnded// The player failed to revive a downed party member in time which must now be revived at a godstone DialogueStarted // One of the hoeries in the party initiated a dialogue LeavingMap // The hero party is about to leave the current map
NOTE: For all CanSee/CannotSee and InAggroRange/OutsideAggroRange event types, _sParam may optionally be set to the value "Enemy". This will cause the event to be triggered for any enemy creature or building in range.
EInventoryEvent
Added Removed Used Read
ECreatureInventoryEvent
Equipped Unequipped Used Consumed
ECreatureEvent
Killed // triggers once the target creature has been killed Damaged // triggers each time the target receives damage Resurrected // triggers once the target creature has been resurrected after previously being dead/non-existant EnteredArea // triggers once the target creature enters the given area LeftArea // triggers once the target creature leaves the given area EnteredSector // triggers once the target creature enters the given sector LeftSector // triggers once the target creature leaves the given sector CanSee // triggers once the target creature can see the creature or building specified by _sParam CannotSee // triggers once the target creature can no longer see the creature or building specified by _sParam EnteredAggroRange // triggers once the target creature comes within aggro range of the creature or building specified by _sParam LeftAggroRange // triggers once the target creature is no longer in aggro range of the creature or building specified by _sParam RevivePeriodEnded // triggers once the target creature has died and it's bleedout timer has run out SummonedCreatures // triggers when the target creature has summoned one or more creatures via spell FollowPathWait // triggers once the target creature stops to wait for the hero party during a follow path command FollowPathResume // triggers once the target creature resumes after waiting for the hero party during a follow path command FollowPathFinished // triggers once the target creature has finished following its assigned path GoToFinished // triggers once the target creature has finished a GoTo/Move command TimedActionFinished // triggers once the target creature has successfully finished a timed action TimedActionCanceled // triggers once a timed action performed by the target creature has been canceled prematurely
NOTE: For the even types CanSee, CannotSee, EnteredAggroRange and LeftAggroRange, _sParam may optionally be set to the value "Enemy". This will cause the event to be triggered for any enemy creature or building in range.
EBuildingEvent
Placed Completed Destroyed Repaired Charging Charged ProductionStarted // Extended event parameter: Name of produced assignment ProducationStalled // Extended event parameter: Name of produced assignment ProductionFinished // Extended event parameter: Name of produced assignment ProductionCanceled // Extended event parameter: Name of produced assignment WorkerAssignmentChanged OwnerChanged GodstonePortalChanged // Extended event parameter: Script name of target godstone
EBuildingCreatureEvent
CreaturesSpawned // Triggered when creatures are spawned by a building
ELogicObjectEvent
Looted // Triggered whenever one or more items are removed from an item container AllLooted // Triggered once the last item has been removed from an item container Unlocked // Triggered once a locked object has been unlocked LootDropped // Triggered when a lootable object has been dropped by a creature
ESectorEvent
OwnerChanged
EFollowPathWaitMode
Describes what a creature should wait for while following a path.
WaitForAnyHeroes // at least one hero must be present before moving on WaitForAllHeroes // entire hero party must be present before moving on WaitForAvatar // the avatar must be present before moving on
EUIEvent
EntitySelected PlayerMarker CharacterCreatorClosed CutsceneFinished VideoFinished BuildModeEntered FinalChoiceApproved FinalChoiceCanceled
EUIWindow
Different types of UI windows which can be accessed from the script
WorldMap LocalMap PartyInventory PartyAbilities QuestJournal ArchfireSelection FinalChoice
EQuestState
Possible states of a quest or quest task.
Unfinished // The quest or task has not been finished yet. Completed // The quest or task has been completed successfully. Failed // The quest or task has not been fulfilled.
ESoundTrack
TrackMusic TrackAmbient TrackReverb
EAIFlag
Flags that control the behavior and permissions of an AI.
CanControlUnits CanControlHeroes CanControlBuildings CanControlProduction CanAttack CanScout CanExpand CanDefend CanLoot CanManageEquipment CanAssignAttributes CanAssignSkills CanBuild CanUpgradeBuildings CanManageWorkers CanProduceUnits CanUpgradeUnits
EItemProperty
BlueprintUpgrade Blueprint QuestItem CanStack CanTrade CanConsume CanRead CanUse Undestroyable TwoHandedWeapon