Sigrid Solveig Haflínudóttirwip Plan 9 port8024a895 years agoHistory
123 lines · 3.1 KB · C
RawDownload
#ifndef _gui_h_#define _gui_h_ #include <SDL2/SDL.h>#include "datatypes.h"#include "stage.h" /*Copyright (c) 2013-2021 Devine Lu Linvega2018 web port by rezmason2021 C89 port by rezmason Permission to use, copy, modify, and distribute this software for anypurpose with or without fee is hereby granted, provided that the abovecopyright notice and this permission notice appear in all copies. THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIESWITH REGARD TO THIS SOFTWARE.*/ /* 	The GUI module bears a lot of responsibility. Every use	the game has for the Stage module is a function in GUI—	usually some expression of the game state. 	Hiversaires has many small, persistent HUD images	and many large, uncommon images. The GUI module loads	the HUD images when the game initializes, and coordinates	the loading and unloading of the larger images on demand.*/ typedef enum {	CURSORTYPE_FUSE,	CURSORTYPE_FORWARD,	CURSORTYPE_LEFT,	CURSORTYPE_RIGHT,	CURSORTYPE_SYSTEM,	NumberOfCursorTypes} CursorType; typedef enum {	ICONTYPE_ALERT,	ICONTYPE_CLOCK_0,	ICONTYPE_CLOCK_1,	ICONTYPE_CLOCK_2,	ICONTYPE_FOOTSTEP,	ICONTYPE_FUSE_0,	ICONTYPE_FUSE_1,	ICONTYPE_FUSE_2,	ICONTYPE_FUSE_3,	ICONTYPE_MUSIC_OFF,	ICONTYPE_MUSIC_ON,	ICONTYPE_SAVE,	NumberOfIconTypes} IconType; typedef enum {	CLOCKTYPE_SHADOW,	CLOCKTYPE_STATE_0,	CLOCKTYPE_STATE_1,	CLOCKTYPE_STATE_2,	NumberOfClockTypes} ClockType; typedef enum {	MODIFIER_NONE,	MODIFIER_ENERGY_FILLED,	MODIFIER_ENERGY_EMPTY,	MODIFIER_ON,	MODIFIER_DOOR_OPEN,	MODIFIER_DOOR_SECRET,	MODIFIER_SEAL_1,	MODIFIER_SEAL_2,	MODIFIER_STUDIO_UNLOCKED,	MODIFIER_STUDIO_SEAL_1,	MODIFIER_STUDIO_SEAL_2,	MODIFIER_STUDIO_SEAL_BOTH,	MODIFIER_ENTENTE_EXIT} NodeModifier; typedef enum {	FOOTSTEP_LEFT,	FOOTSTEP_STRAIGHT,	FOOTSTEP_RIGHT} Footstep; int GUI_PreloadAssets(void);void GUI_Init(void);void GUI_Quit(void);void GUI_SetActionTrigger(int active);void GUI_HideCursor(void);void GUI_UpdateCursor(int mouseX, int mouseY, int pressed);void GUI_EnableFuseCursor(int enable);RegionName GUI_GetRegionNameAt(int mouseX, int mouseY);void GUI_Reset(void);void GUI_ShowClockFace(int state, int refresh);void GUI_ShowClock(int state);void GUI_ShowClockAlert(void);void GUI_ShowSeals(Zone zone1, Zone zone2);void GUI_ShowSealAlert(void);void GUI_ShowEnergy(int level);void GUI_ShowEnergyAlert(void);void GUI_ShowAudio(int enabled);void GUI_HideMenu(void);void GUI_ShowHomeMenu(void);void GUI_ShowMovement(int nudgeX, int nudgeY);void GUI_ShowNode(char *nodeName, Orientation orientation, NodeModifier modifier, double fadeDuration, double fadeDelay);void GUI_ShowCredits(int showSecret);void GUI_LaunchCreditURL(void);void GUI_RunSplash(void (*onComplete)(void));void GUI_SkipSplash(void);void GUI_FlashVignette(void);void GUI_ShowSave(void);void GUI_ShowProgressScreen(Chapter chapter);void GUI_ShowEntenteScreen(void);void GUI_ShowMazeInstruction(MazeAxis axis, MazeInstruction instruction);void GUI_ShowFootstep(Footstep step);void GUI_TintRed(void);void GUI_TintCyan(void);void GUI_StopTint(void); #endif

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t