78 lines
1.8 KiB
GDScript
78 lines
1.8 KiB
GDScript
# src/core/constants.gd
|
|
# Zero Godot dependency — no class_name, use static functions to avoid global state.
|
|
|
|
const RESULT_OK := 0
|
|
const ERR_INVALID_CARDS := 1
|
|
const ERR_NOT_YOUR_TURN := 2
|
|
const ERR_CANNOT_PASS := 3
|
|
const ERR_CARD_NOT_FOUND := 4
|
|
const ERR_HAND_EMPTY := 5
|
|
const ERR_INVALID_TRIBUTE := 6
|
|
const ERR_GAME_OVER := 7
|
|
const ERR_STATE_CONFLICT := 8
|
|
|
|
const SUIT_SPADE := 0
|
|
const SUIT_HEART := 1
|
|
const SUIT_CLUB := 2
|
|
const SUIT_DIAMOND := 3
|
|
const SUIT_JOKER_SMALL := 4
|
|
const SUIT_JOKER_BIG := 5
|
|
|
|
const RANK_2 := 2
|
|
const RANK_3 := 3
|
|
const RANK_4 := 4
|
|
const RANK_5 := 5
|
|
const RANK_6 := 6
|
|
const RANK_7 := 7
|
|
const RANK_8 := 8
|
|
const RANK_9 := 9
|
|
const RANK_10 := 10
|
|
const RANK_J := 11
|
|
const RANK_Q := 12
|
|
const RANK_K := 13
|
|
const RANK_A := 14
|
|
const RANK_SMALL_JOKER := 15
|
|
const RANK_BIG_JOKER := 16
|
|
|
|
const TYPE_SINGLE := 0
|
|
const TYPE_PAIR := 1
|
|
const TYPE_TRIPLE := 2
|
|
const TYPE_TRIPLE_PLUS_TWO := 3
|
|
const TYPE_STRAIGHT := 4
|
|
const TYPE_CONSECUTIVE_PAIRS := 5
|
|
const TYPE_STEEL_PLATE := 6
|
|
const TYPE_STRAIGHT_FLUSH := 7
|
|
const TYPE_BOMB := 8
|
|
const TYPE_ROCKET := 9
|
|
|
|
const TURN_PLAY := 0
|
|
const TURN_PASS := 1
|
|
const TURN_TRIBUTE_GIVE := 2
|
|
const TURN_TRIBUTE_RETURN := 3
|
|
|
|
const PHASE_INIT := 0
|
|
const PHASE_DEAL := 1
|
|
const PHASE_TRIBUTE := 2
|
|
const PHASE_PLAY := 3
|
|
const PHASE_LEVEL_UP := 4
|
|
const PHASE_GAME_OVER := 5
|
|
|
|
const WILD_SOURCE_GRADE := 0
|
|
const WILD_SOURCE_SYSTEM := 1
|
|
|
|
const MAX_AI_DECISION_MS := 3000
|
|
const BEAM_WIDTH := 50
|
|
const MAX_ENUM_NODES := 10000
|
|
const TOTAL_CARDS := 108
|
|
const CARDS_PER_PLAYER := 27
|
|
const PLAYER_COUNT := 4
|
|
|
|
static func make_result(ok: bool, error_code: int, data = null) -> Dictionary:
|
|
return {"ok": ok, "error_code": error_code, "data": data}
|
|
|
|
static func success(data = null) -> Dictionary:
|
|
return {"ok": true, "error_code": RESULT_OK, "data": data}
|
|
|
|
static func err(code: int) -> Dictionary:
|
|
return {"ok": false, "error_code": code, "data": null}
|