Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Dense gold #3865

Draft
wants to merge 16 commits into
base: master
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from 10 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
26 changes: 25 additions & 1 deletion config/fxdata/columnset.toml
Original file line number Diff line number Diff line change
Expand Up @@ -10284,4 +10284,28 @@ Height = 5
SolidMask = 25
FloorTexture = 179
Orientation = 0
Cubes = [148,0,0,481,160,0,0,0]
Cubes = [148,0,0,481,160,0,0,0]

[column1286]
Lintel = 0
Height = 5
SolidMask = 31
FloorTexture = 0
Orientation = 0
Cubes = [25, 10, 484, 483, 482, 0, 0, 0]

[column1287]
Lintel = 0
Height = 5
SolidMask = 31
FloorTexture = 0
Orientation = 0
Cubes = [25, 10, 483, 483, 484, 0, 0, 0]

[column1288]
Lintel = 0
Height = 5
SolidMask = 31
FloorTexture = 0
Orientation = 0
Cubes = [25, 10, 482, 484, 483, 0, 0, 0]
48 changes: 48 additions & 0 deletions config/fxdata/cubes.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -2105,3 +2105,51 @@ Textures = 1032 1032 1032 1032 1032 0
[cube481]
Name = DOOR_MIDAS_BR
Textures = 1031 1033 1033 1031 1033 0

[cube482]
Name = DENSE_GOLD1
Textures = 592 592 592 592 592 592

[cube483]
Name = DENSE_GOLD2
Textures = 593 593 593 593 593 593

[cube484]
Name = DENSE_GOLD3
Textures = 594 594 594 594 594 594

[cube485]
Name = DENSE_GOLD_NEAR_LAVA1
Textures = 595 595 595 595 595 595

[cube486]
Name = DENSE_GOLD_NEAR_LAVA2
Textures = 596 596 596 596 596 596

[cube487]
Name = DENSE_GOLD_NEAR_LAVA3
Textures = 597 597 597 597 597 597

[cube488]
Name = INTERMEDIATE_GOLD1
Textures = 598 598 598 598 598 598

[cube489]
Name = INTERMEDIATE_GOLD2
Textures = 599 599 599 599 599 599

[cube490]
Name = INTERMEDIATE_GOLD3
Textures = 600 600 600 600 600 600

[cube491]
Name = INTERMEDIATE_GOLD_NEAR_LAVA1
Textures = 601 601 601 601 601 601

[cube492]
Name = INTERMEDIATE_GOLD_NEAR_LAVA2
Textures = 602 602 602 602 602 602

[cube493]
Name = INTERMEDIATE_GOLD_NEAR_LAVA3
Textures = 603 603 603 603 603 603
115 changes: 114 additions & 1 deletion config/fxdata/slabset.toml
Original file line number Diff line number Diff line change
Expand Up @@ -8143,4 +8143,117 @@ Objects = []

[slab59.SE]
Columns = [365, 365, 365, 365, 365, 365, 365, 365, 365]
Objects = []
Objects = []

[slab60]
[slab60.S]
Columns = [1286, 1287, 1288, 1288, 1288, 1286, 30, 11, 14]
Objects = []

[slab60.W]
Columns = [30, 1288, 1286, 11, 1288, 1287, 14, 1286, 1288]
Objects = []

[slab60.N]
Columns = [14, 11, 30, 1286, 1288, 1288, 1288, 1287, 1286]
Objects = []

[slab60.E]
Columns = [1288, 1286, 14, 1287, 1288, 11, 1286, 1288, 30]
Objects = []

[slab60.SW]
Columns = [49, 1288, 1286, 205, 12, 1287, 204, 2, 30]
Objects = []

[slab60.NW]
Columns = [207, 206, 24, 208, 50, 1288, 48, 1286, 1287]
Objects = []

[slab60.NE]
Columns = [50, 205, 2, 1286, 30, 205, 1288, 1287, 14]
Objects = []

[slab60.SE]
Columns = [1288, 1286, 16, 1287, 30, 207, 55, 205, 206]
Objects = []

[slab60.ALL]
Columns = [15, 51, 15, 55, 1286, 14, 16, 28, 16]
Objects = []

[slab60.S_LAVA]
Columns = [1286, 1288, 1287, 50, 30, 28, 60, 61, 62]
Objects = []

[slab60.W_LAVA]
Columns = [63, 52, 1288, 64, 45, 1286, 65, 26, 1287]
Objects = []

[slab60.N_LAVA]
Columns = [83, 84, 90, 37, 50, 51, 1288, 1286, 1287]
Objects = []

[slab60.E_LAVA]
Columns = [1286, 50, 90, 1288, 53, 94, 1287, 24, 87]
Objects = []

[slab60.SW_LAVA]
Columns = [91, 1287, 1288, 96, 88, 1286, 818, 96, 90]
Objects = []

[slab60.NW_LAVA]
Columns = [818, 96, 234, 96, 92, 1287, 233, 1288, 1286]
Objects = []

[slab60.NE_LAVA]
Columns = [235, 96, 818, 1286, 94, 96, 1287, 1288, 96]
Objects = []

[slab60.SE_LAVA]
Columns = [1286, 1286, 98, 1287, 99, 96, 236, 96, 818]
Objects = []

[slab60.ALL_LAVA]
Columns = [127, 95, 126, 97, 1288, 93, 123, 100, 93]
Objects = []

[slab60.S_WATER]
Columns = [1286, 1288, 1287, 1288, 1287, 1286, 130, 102, 101]
Objects = []

[slab60.W_WATER]
Columns = [111, 1286, 1287, 112, 1287, 1288, 113, 1288, 1286]
Objects = []

[slab60.N_WATER]
Columns = [112, 114, 115, 1287, 1288, 1286, 1286, 1287, 1288]
Objects = []

[slab60.E_WATER]
Columns = [1286, 1286, 116, 1288, 1287, 117, 1287, 1288, 118]
Objects = []

[slab60.SW_WATER]
Columns = [136, 1286, 1288, 133, 103, 1287, 819, 133, 121]
Objects = []

[slab60.NW_WATER]
Columns = [819, 133, 139, 133, 105, 1287, 104, 1288, 1287]
Objects = []

[slab60.NE_WATER]
Columns = [107, 133, 819, 1287, 106, 133, 1286, 1288, 115]
Objects = []

[slab60.SE_WATER]
Columns = [1287, 1286, 124, 1288, 108, 133, 133, 133, 819]
Objects = []

[slab60.ALL_WATER]
Columns = [110, 119, 120, 138, 1286, 138, 109, 135, 122]
Objects = []

[slab60.CENTER]
Columns = [1288, 1286, 1288, 1287, 1286, 1288, 1288, 1287, 1288]
Objects = []
18 changes: 18 additions & 0 deletions config/fxdata/terrain.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -1069,6 +1069,24 @@ IsDiggable = 0
IsOwnable = 1
WlbType = 0

[slab60]
Name = DENSE_GOLD
TooltipTextID = 326
BlockFlagsHeight = 4
BlockHealthIndex = 1
BlockFlags = BLOCKING VALUABLE
NoBlockFlags =
FillStyle = 0
Category = 0
SlbID = 0
Indestructible = 0
Wibble = 1
Animated = 0
IsSafeLand = 0
IsDiggable = 1
IsOwnable = 0
WlbType = 0

; Rooms configuration.

[room0]
Expand Down
50 changes: 49 additions & 1 deletion config/fxdata/textureanim.toml
Original file line number Diff line number Diff line change
Expand Up @@ -195,4 +195,52 @@ frames = [1029,1029,1035,1035,1038,1038,1041,1041]

[texture591]
name = "midas_door_cr"
frames = [1030,1030,1036,1036,1039,1039,1042,1042]
frames = [1030,1030,1036,1036,1039,1039,1042,1042]

[texture592]
name = "dense_gold"
frames = [1043,1043,1044,1044,1045,1045,1046,1046]

[texture593]
name = "dense_gold2"
frames = [1047,1047,1048,1048,1049,1049,1050,1050]

[texture594]
name = "dense_gold3"
frames = [1051,1051,1052,1052,1053,1053,1054,1054]

[texture595]
name = "dense_gold_near_lava"
frames = [1055,1056,1056,1057,1057,1058,1058,1055]

[texture596]
name = "dense_gold_near_lava2"
frames = [1057,1058,1058,1055,1055,1056,1056,1057]

[texture597]
name = "dense_gold_near_lava3"
frames = [1056,1056,1057,1057,1058,1058,1055,1055]

[texture598]
name = "intermediate_gold"
frames = [1059,1059,1060,1060,1061,1061,1062,1062]

[texture599]
name = "intermediate_gold2"
frames = [1063,1063,1064,1064,1065,1065,1066,1066]

[texture600]
name = "intermediate_gold3"
frames = [1067,1067,1068,1068,1069,1069,1070,1070]

[texture601]
name = "intermediate_gold_near_lava"
frames = [1071,1072,1072,10737,1073,1074,1074,1071]

[texture602]
name = "intermediate_gold_near_lava2"
frames = [1073,1074,1074,1071,1071,1072,1072,1073]

[texture603]
name = "intermediate_gold_near_lava3"
frames = [1072,1072,1073,1073,1074,1074,1071,1071]
2 changes: 1 addition & 1 deletion src/frontmenu_ingame_map.c
Original file line number Diff line number Diff line change
Expand Up @@ -736,7 +736,7 @@ void panel_map_update_subtile(PlayerNumber plyr_idx, MapSubtlCoord stl_x, MapSub
}
else if (map_block_revealed(mapblk, plyr_idx))
{
if (slb->kind == SlbT_GOLD)
if ((slb->kind == SlbT_GOLD) || (slb->kind == SlbT_DENSEGOLD))
{
col = PnC_Gold;
if ((mapblk->flags & SlbAtFlg_TaggedValuable) != 0)
Expand Down
2 changes: 1 addition & 1 deletion src/gui_parchment.c
Original file line number Diff line number Diff line change
Expand Up @@ -231,7 +231,7 @@ TbPixel get_overhead_mapblock_color(MapSubtlCoord stl_x, MapSubtlCoord stl_y, Pl
{
pixval = background;
} else
if (slb->kind == SlbT_GOLD)
if ((slb->kind == SlbT_GOLD) || (slb->kind == SlbT_DENSEGOLD))
{
pixval = pixmap.ghost[background + 0x8C00];
} else
Expand Down
1 change: 1 addition & 0 deletions src/map_blocks.c
Original file line number Diff line number Diff line change
Expand Up @@ -1833,6 +1833,7 @@ void place_slab_type_on_map_f(SlabKind nslab, MapSubtlCoord stl_x, MapSubtlCoord
{
case SlbT_ROCK:
case SlbT_GOLD:
case SlbT_DENSEGOLD:
case SlbT_EARTH:
case SlbT_TORCHDIRT:
case SlbT_WALLDRAPE:
Expand Down
1 change: 1 addition & 0 deletions src/map_data.c
Original file line number Diff line number Diff line change
Expand Up @@ -681,6 +681,7 @@ void conceal_map_area(PlayerNumber plyr_idx,MapSubtlCoord start_x,MapSubtlCoord
case SlbT_ROCK:
case SlbT_GEMS:
case SlbT_GOLD:
case SlbT_DENSEGOLD:
continue;
default:
break;
Expand Down
3 changes: 2 additions & 1 deletion src/slab_data.c
Original file line number Diff line number Diff line change
Expand Up @@ -376,7 +376,7 @@ int check_room_at_slab_loose(PlayerNumber plyr_idx, RoomKind rkind, MapSlabCoord
{
result = 4;
}
else if (slb->kind == SlbT_GOLD)
else if ((slb->kind == SlbT_GOLD) || (slb->kind == SlbT_DENSEGOLD))
{
result = 5;
}
Expand Down Expand Up @@ -489,6 +489,7 @@ long calculate_effeciency_score_for_room_slab(SlabCodedCoords slab_num, PlayerNu
{
case SlbT_ROCK:
case SlbT_GOLD:
case SlbT_DENSEGOLD:
case SlbT_EARTH:
case SlbT_GEMS:
eff_score++;
Expand Down
3 changes: 3 additions & 0 deletions src/slab_data.h
Original file line number Diff line number Diff line change
Expand Up @@ -90,6 +90,9 @@ enum SlabTypes {
SlbT_DOORSECRET1 = 55,
SlbT_DOORSECRET2 = 56,
SlbT_ROCK_FLOOR = 57,
SlbT_DOORMIDAS1 = 58,
SlbT_DOORMIDAS2 = 59,
SlbT_DENSEGOLD = 60,
};

enum WlbType {
Expand Down
2 changes: 1 addition & 1 deletion src/thing_doors.c
Original file line number Diff line number Diff line change
Expand Up @@ -386,7 +386,7 @@ TbBool door_can_stand(struct Thing *thing)
long slb_y = subtile_slab(thing->mappos.y.stl.num) + (int)small_around[i].delta_y;
struct SlabMap* slb = get_slabmap_block(slb_x, slb_y);
struct SlabAttr* slbattr = get_slab_attrs(slb);
if ((slbattr->category == SlbAtCtg_FortifiedWall) || (slb->kind == SlbT_ROCK) || (slbattr->category == SlbAtCtg_FriableDirt) || (slb->kind == SlbT_GOLD) || (slb->kind == SlbT_GEMS))
if ((slbattr->category == SlbAtCtg_FortifiedWall) || (slb->kind == SlbT_ROCK) || (slbattr->category == SlbAtCtg_FriableDirt) || (slb->kind == SlbT_GOLD) || (slb->kind == SlbT_DENSEGOLD) || (slb->kind == SlbT_GEMS))
wall_flags |= 0x01;
}
// The array needs to have 2^4 = 16 values
Expand Down