Functions relative to the handling of Jokers. More...
#include "card.h"#include "game.h"#include "graphic_utils.h"#include "item.h"#include "random.h"#include <maxmod.h>Go to the source code of this file.
Data Structures | |
| struct | Joker |
| struct | JokerObject |
| struct | JokerEffect |
| struct | JokerInfo |
Typedefs | |
| typedef struct JokerObject | JokerObject |
| typedef u32(* | JokerEffectFunc) (Joker *joker, Card *scored_card, enum JokerEvent joker_event, JokerEffect **joker_effect) |
| typedef int(* | JokerDescFunc) (Joker *joker, Rect dest_rect) |
Functions | |
| const JokerInfo * | get_joker_registry_entry (int joker_id) |
| size_t | get_joker_registry_size (void) |
| void | joker_init () |
| Joker * | joker_new (u8 id) |
| void | joker_destroy (Joker **joker) |
| u32 | joker_get_score_effect (Joker *joker, Card *scored_card, enum JokerEvent joker_event, JokerEffect **joker_effect) |
| const char * | joker_get_rarity_string (u8 rarity) |
| u16 | joker_get_rarity_color (u8 rarity, bool main_color) |
| Get Joker rarity panel color. | |
| int | joker_get_sell_value (const Joker *joker) |
| JokerObject * | joker_object_new (Joker *joker) |
| void | joker_object_destroy (JokerObject **joker_object) |
| void | joker_object_shake (JokerObject *joker_object, mm_word sound_id) |
| int | joker_object_get_buy_price (Item *joker_object) |
| Returns the buy price of the joker object. | |
| void | joker_object_add_to_owned (Item *joker_object) |
| Add a Joker to the list of owned Jokers and place it in the joker row. | |
| void | joker_object_dispose (Item **joker_object) |
| Destroy a JokerObject item, free its resources, and make it available to be rolled. | |
| void | joker_set_rollable (int joker_id, bool rollable) |
| Set whether a Joker is available to be rolled for the shop, packs, etc. | |
| void | joker_reset_rollable_jokers (void) |
| Reset rollable jokers to include all jokers in the registry. | |
| Item * | joker_object_roll_new (enum RngSequence key) |
| Roll and create a new JokerObject item. | |
| bool | joker_object_score (JokerObject *joker_object, CardObject *card_object, enum JokerEvent joker_event) |
| Sprite * | joker_object_get_sprite (JokerObject *joker_object) |
Functions relative to the handling of Jokers.
Definition in file joker.h.
| #define JOKER_TID (JOKER_STARTING_LAYER * JOKER_SPRITE_OFFSET) |
| typedef u32(* JokerEffectFunc) (Joker *joker, Card *scored_card, enum JokerEvent joker_event, JokerEffect **joker_effect) |
| const JokerInfo * get_joker_registry_entry | ( | int | joker_id | ) |
Definition at line 248 of file joker_effects.c.
| size_t get_joker_registry_size | ( | void | ) |
Definition at line 257 of file joker_effects.c.
| u16 joker_get_rarity_color | ( | u8 | rarity, |
| bool | main_color | ||
| ) |
Get Joker rarity panel color.
The colors are organized in the card_rarity_pal_gfx.png file which is organized like this:
| rarity | Value of the rarity (Common, Rare...) |
| main_color | Whether we want the main or shadow color |
| u32 joker_get_score_effect | ( | Joker * | joker, |
| Card * | scored_card, | ||
| enum JokerEvent | joker_event, | ||
| JokerEffect ** | joker_effect | ||
| ) |
| void joker_object_add_to_owned | ( | Item * | joker_object | ) |
Add a Joker to the list of owned Jokers and place it in the joker row.
| joker_object | The JokerObject to add cast to Item* |
| void joker_object_destroy | ( | JokerObject ** | joker_object | ) |
| void joker_object_dispose | ( | Item ** | joker_object | ) |
Destroy a JokerObject item, free its resources, and make it available to be rolled.
| joker_object | Pointer to the JokerObject Item* to destroy; set to NULL. |
| int joker_object_get_buy_price | ( | Item * | joker_object | ) |
| Sprite * joker_object_get_sprite | ( | JokerObject * | joker_object | ) |
| JokerObject * joker_object_new | ( | Joker * | joker | ) |
| Item * joker_object_roll_new | ( | enum RngSequence | key | ) |
Roll and create a new JokerObject item.
| key | to the RNG sequence that will be used to roll the Joker ID. |
Item* (JokerObject) or NULL if none available. | bool joker_object_score | ( | JokerObject * | joker_object, |
| CardObject * | card_object, | ||
| enum JokerEvent | joker_event | ||
| ) |
| void joker_object_shake | ( | JokerObject * | joker_object, |
| mm_word | sound_id | ||
| ) |
| void joker_reset_rollable_jokers | ( | void | ) |