Complete Example Scripts: Difference between revisions
Jump to navigation
Jump to search
no edit summary
imported>Fg109 m (→Maintenance: --> added link to OnPlayerLoadGame page. Not sure if pre-1.6 version needs to be removed.) |
imported>Sollar No edit summary |
||
| Line 840: | Line 840: | ||
EndWhile | EndWhile | ||
EndFunction</source> | EndFunction</source> | ||
= Show Gift Window and Track Items Given = | |||
This is used for the Player to feed his animal companion. The FormList is created in the CK and includes all the food (Potion & Ingredient) items I want to consider food for the animal. | |||
<source lang="papyrus"> | |||
FormList Property FoodList Auto | |||
Bool hasBeenFedToday = False | |||
Function FeedCompanion() | |||
ObjectReference foodItem = None | |||
int indexPos = FoodList.GetSize() | |||
While(indexPos > 0) | |||
indexPos -= 1 | |||
foodItem = FoodList.GetAt(indexPos) as ObjectReference | |||
AddInventoryEventFilter(foodItem) | |||
EndWhile | |||
Self.ShowGiftMenu(true, FoodList, false, False) | |||
Self.RemoveAllInventoryEventFilters() | |||
EndFunction | |||
Event OnItemAdded(Form akBaseItem, int aiItemCount, ObjectReference akItemReference, ObjectReference akSourceContainer) | |||
If akSourceContainer == Game.GetPlayer() | |||
self.RemoveItem(akBaseItem,aiItemCount) | |||
If hasBeenFedToday == False | |||
hasBeenFedToday=True | |||
EndIf | |||
EndIf | |||
EndEvent | |||
</source> | |||