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
6#define UI_SPRITE_DIMS_PXLS 32
7struct Entity2D;
9
10
22
32
33/* when it is switched to in the menu */
34typedef void(*OnMakeItemCurrentFn)(struct Entity2D* pPlayer, struct GameFrameworkLayer* pLayer);
35typedef void(*OnStopBeingCurrentItemFn)(struct Entity2D* pPlayer, struct GameFrameworkLayer* pLayer);
36typedef bool(*OnUseItemFn)(struct Entity2D* pPlayer, struct GameFrameworkLayer* pLayer); // return false if item is used up
37typedef bool(*TryEquipFn)(struct Entity2D* pPlayer, struct GameFrameworkLayer* pLayer, enum WfEquipSlot slot);
38
49
50void WfAddItemDef(struct WfItemDef* pDef);
51
53
55
57
58const struct WfItemDef* WfGetItemDef(int itemIndex);
59
60#endif
vec2 vec2 struct Entity2DCollection struct GameFrameworkLayer * pLayer
Definition EntityQuadTree.h:38
void WfInitItems()
void(* OnStopBeingCurrentItemFn)(struct Entity2D *pPlayer, struct GameFrameworkLayer *pLayer)
Definition WfItem.h:35
void(* OnMakeItemCurrentFn)(struct Entity2D *pPlayer, struct GameFrameworkLayer *pLayer)
Definition WfItem.h:34
void WfRegisterItemScriptFunctions()
Definition WfItem.c:64
WfEquipSlot
Definition WfItem.h:24
@ Head
Definition WfItem.h:27
@ Torso
Definition WfItem.h:28
@ Arms
Definition WfItem.h:30
@ Ring2
Definition WfItem.h:26
@ Ring1
Definition WfItem.h:25
@ Legs
Definition WfItem.h:29
bool(* OnUseItemFn)(struct Entity2D *pPlayer, struct GameFrameworkLayer *pLayer)
Definition WfItem.h:36
WfItemIndices
Definition WfItem.h:12
@ WfBasicBow
Definition WfItem.h:19
@ WfBasicFishingRod
Definition WfItem.h:17
@ WfNumBuiltinItems
Definition WfItem.h:20
@ WfBasicAxe
Definition WfItem.h:13
@ WfBasicHoe
Definition WfItem.h:18
@ WfBasicSword
Definition WfItem.h:14
@ WfBasicPickAxe
Definition WfItem.h:15
@ WfBasicScythe
Definition WfItem.h:16
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:37
Definition Entities.h:190
Definition GameFramework.h:42
Definition WfItem.h:40
void * pUserData
Definition WfItem.h:43
OnUseItemFn onUseItem
Definition WfItem.h:46
OnStopBeingCurrentItemFn onStopBeingCurrent
Definition WfItem.h:45
OnMakeItemCurrentFn onMakeCurrent
Definition WfItem.h:44
TryEquipFn onTryEquip
Definition WfItem.h:47
const char * UISpriteName
Definition WfItem.h:42