Stardew Engine
Loading...
Searching...
No Matches
WfItem.h
Go to the documentation of this file.
1#ifndef WFITEM_H
2#define WFITEM_H
3#include "HandleDefs.h"
4#include <stdbool.h>
5#include "WfEnums.h"
6
7#define UI_SPRITE_DIMS_PXLS 32
8struct Entity2D;
10
11
23
33
34/* when it is switched to in the menu */
35typedef void(*OnMakeItemCurrentFn)(struct Entity2D* pPlayer, struct GameFrameworkLayer* pLayer);
36typedef void(*OnStopBeingCurrentItemFn)(struct Entity2D* pPlayer, struct GameFrameworkLayer* pLayer);
37typedef bool(*OnUseItemFn)(struct Entity2D* pPlayer, struct GameFrameworkLayer* pLayer); // return false if item is used up
38typedef bool(*TryEquipFn)(struct Entity2D* pPlayer, struct GameFrameworkLayer* pLayer, enum WfEquipSlot slot);
39
52
53void WfAddItemDef(struct WfItemDef* pDef);
54
56
58
60
61const struct WfItemDef* WfGetItemDef(int itemIndex);
62
63#endif
vec2 vec2 struct Entity2DCollection struct GameFrameworkLayer * pLayer
Definition EntityQuadTree.h:38
WfActionAnimation
an animation that plays and then finishes, returning back to the normal movement animations
Definition WfEnums.h:25
void WfInitItems()
void(* OnStopBeingCurrentItemFn)(struct Entity2D *pPlayer, struct GameFrameworkLayer *pLayer)
Definition WfItem.h:36
void(* OnMakeItemCurrentFn)(struct Entity2D *pPlayer, struct GameFrameworkLayer *pLayer)
Definition WfItem.h:35
void WfRegisterItemScriptFunctions()
Definition WfItem.c:64
WfEquipSlot
Definition WfItem.h:25
@ Head
Definition WfItem.h:28
@ Torso
Definition WfItem.h:29
@ Arms
Definition WfItem.h:31
@ Ring2
Definition WfItem.h:27
@ Ring1
Definition WfItem.h:26
@ Legs
Definition WfItem.h:30
bool(* OnUseItemFn)(struct Entity2D *pPlayer, struct GameFrameworkLayer *pLayer)
Definition WfItem.h:37
WfItemIndices
Definition WfItem.h:13
@ WfBasicBow
Definition WfItem.h:20
@ WfBasicFishingRod
Definition WfItem.h:18
@ WfNumBuiltinItems
Definition WfItem.h:21
@ WfBasicAxe
Definition WfItem.h:14
@ WfBasicHoe
Definition WfItem.h:19
@ WfBasicSword
Definition WfItem.h:15
@ WfBasicPickAxe
Definition WfItem.h:16
@ WfBasicScythe
Definition WfItem.h:17
void WfAddBuiltinItems()
Definition WfItem.c:30
const struct WfItemDef * WfGetItemDef(int itemIndex)
Definition WfItem.c:69
void WfAddItemDef(struct WfItemDef *pDef)
Definition WfItem.c:25
bool(* TryEquipFn)(struct Entity2D *pPlayer, struct GameFrameworkLayer *pLayer, enum WfEquipSlot slot)
Definition WfItem.h:38
Definition Entities.h:199
Definition GameFramework.h:42
Definition WfItem.h:41
void * pUserData
Definition WfItem.h:44
OnUseItemFn onUseItem
Definition WfItem.h:47
enum WfActionAnimation onUseAnimation
Definition WfItem.h:49
bool bCanUseItem
Definition WfItem.h:50
OnStopBeingCurrentItemFn onStopBeingCurrent
Definition WfItem.h:46
OnMakeItemCurrentFn onMakeCurrent
Definition WfItem.h:45
TryEquipFn onTryEquip
Definition WfItem.h:48
const char * UISpriteName
Definition WfItem.h:43