diff --git a/code/__defines/xenoarcheaology.dm b/code/__defines/xenoarcheaology.dm
index e4b0a3935a..20781a8356 100644
--- a/code/__defines/xenoarcheaology.dm
+++ b/code/__defines/xenoarcheaology.dm
@@ -49,6 +49,7 @@
#define DIGSITE_TECHNICAL 4
#define DIGSITE_TEMPLE 5
#define DIGSITE_WAR 6
+#define DIGSITE_MIDDEN 7
#define EFFECT_TOUCH 0
#define EFFECT_AURA 1
diff --git a/code/modules/xenoarcheaology/artifacts/artifact.dm b/code/modules/xenoarcheaology/artifacts/artifact.dm
index 60e3543e19..1365f8113c 100644
--- a/code/modules/xenoarcheaology/artifacts/artifact.dm
+++ b/code/modules/xenoarcheaology/artifacts/artifact.dm
@@ -45,10 +45,10 @@
if(!isnull(predefined_icon_num))
icon_num = predefined_icon_num
else
- icon_num = rand(0, 14)
+ icon_num = rand(0, 15)
icon_state = "ano[icon_num]0"
- if(icon_num == 7 || icon_num == 8)
+ if(icon_num == 7 || icon_num == 8 || icon_num == 15)
name = "large crystal"
desc = pick("It shines faintly as it catches the light.",
"It appears to have a faint inner glow.",
@@ -57,7 +57,7 @@
"It's mesmerizing to behold.")
if(prob(50))
my_effect.trigger = TRIGGER_ENERGY
- else if(icon_num == 9)
+ else if(icon_num == 9 || icon_num == 17 || icon_num == 19)
name = "alien computer"
desc = "It is covered in strange markings."
if(prob(75))
diff --git a/code/modules/xenoarcheaology/artifacts/artifact_find.dm b/code/modules/xenoarcheaology/artifacts/artifact_find.dm
index dbfbe032e6..fe91bbadbc 100644
--- a/code/modules/xenoarcheaology/artifacts/artifact_find.dm
+++ b/code/modules/xenoarcheaology/artifacts/artifact_find.dm
@@ -11,9 +11,8 @@
5;/obj/structure/constructshell,
5;/obj/machinery/syndicate_beacon/virgo, // VOREStation Edit: use virgo-specific subtype that doesn't create 'real' antags,
25;/obj/machinery/power/supermatter/shard,
- 50;/obj/structure/cult/pylon,
100;/obj/machinery/auto_cloner,
100;/obj/machinery/giga_drill,
100;/obj/machinery/replicator,
150;/obj/structure/crystal,
-1000;/obj/machinery/artifact)
\ No newline at end of file
+ 1000;/obj/machinery/artifact)
diff --git a/code/modules/xenoarcheaology/boulder.dm b/code/modules/xenoarcheaology/boulder.dm
index 09b9d398ea..a04fce089f 100644
--- a/code/modules/xenoarcheaology/boulder.dm
+++ b/code/modules/xenoarcheaology/boulder.dm
@@ -77,6 +77,7 @@
var/obj/machinery/artifact/X = O
if(X.my_effect)
X.my_effect.artifact_id = artifact_find.artifact_id
+ O.anchored = FALSE // Anchored finds are lame.
src.visible_message("\The [src] suddenly crumbles away.")
else
user.visible_message("\The [src] suddenly crumbles away.", "\The [src] has been whittled away under your careful excavation, but there was nothing of interest inside.")
diff --git a/code/modules/xenoarcheaology/finds/find_spawning.dm b/code/modules/xenoarcheaology/finds/find_spawning.dm
index fc78135381..27fd388c5f 100644
--- a/code/modules/xenoarcheaology/finds/find_spawning.dm
+++ b/code/modules/xenoarcheaology/finds/find_spawning.dm
@@ -295,7 +295,7 @@
if(spawn_type)
var/obj/item/weapon/gun/energy/new_gun = new spawn_type(src.loc)
new_item = new_gun
- new_item.icon_state = "egun[rand(1,6)]"
+ new_item.icon_state = "egun[rand(1,12)]"
new_gun.desc = "This is an antique energy weapon, you're not sure if it will fire or not."
//5% chance to explode when first fired
@@ -317,7 +317,7 @@
//revolver
var/obj/item/weapon/gun/projectile/new_gun = new /obj/item/weapon/gun/projectile/revolver(src.loc)
new_item = new_gun
- new_item.icon_state = "gun[rand(1,4)]"
+ new_item.icon_state = "gun[rand(1,7)]"
new_item.icon = 'icons/obj/xenoarchaeology.dmi'
//33% chance to be able to reload the gun with human ammunition
diff --git a/code/modules/xenoarcheaology/finds/finds_defines.dm b/code/modules/xenoarcheaology/finds/finds_defines.dm
index 29516d763a..f827435155 100644
--- a/code/modules/xenoarcheaology/finds/finds_defines.dm
+++ b/code/modules/xenoarcheaology/finds/finds_defines.dm
@@ -35,7 +35,7 @@ var/global/list/finds_as_strings = list(
return "phoron"
/proc/get_random_digsite_type()
- return pick(100;DIGSITE_GARDEN, 95;DIGSITE_ANIMAL, 90;DIGSITE_HOUSE, 85;DIGSITE_TECHNICAL, 80;DIGSITE_TEMPLE, 75;DIGSITE_WAR)
+ return pick(100;DIGSITE_GARDEN, 95;DIGSITE_ANIMAL, 90;DIGSITE_HOUSE, 85;DIGSITE_TECHNICAL, 85;DIGSITE_MIDDEN, 80;DIGSITE_TEMPLE, 75;DIGSITE_WAR)
/proc/get_random_find_type(var/digsite)
. = 0
@@ -62,12 +62,14 @@ var/global/list/finds_as_strings = list(
100;ARCHAEO_PEN,
100;ARCHAEO_LIGHTER,
100;ARCHAEO_BOX,
+ 100;ARCHAEO_RING,
75;ARCHAEO_GASMASK,
75;ARCHAEO_COIN,
75;ARCHAEO_UNKNOWN,
50;ARCHAEO_SHARD,
50;ARCHAEO_RODS,
- 25;ARCHAEO_METAL)
+ 25;ARCHAEO_METAL,
+ 5;ARCHAEO_ALIEN_BOAT)
if(DIGSITE_TECHNICAL)
. = pick(
125;ARCHAEO_GASMASK,
@@ -81,7 +83,8 @@ var/global/list/finds_as_strings = list(
75;ARCHAEO_RODS,
75;ARCHAEO_UNKNOWN,
50;ARCHAEO_HANDCUFFS,
- 50;ARCHAEO_BEARTRAP)
+ 50;ARCHAEO_BEARTRAP,
+ 1;ARCHAEO_IMPERION_CIRCUIT)
if(DIGSITE_TEMPLE)
. = pick(
200;ARCHAEO_CULTROBES,
@@ -91,12 +94,14 @@ var/global/list/finds_as_strings = list(
100;ARCHAEO_KNIFE,
100;ARCHAEO_CRYSTAL,
75;ARCHAEO_CULTBLADE,
+ 50;ARCHAEO_RING,
50;ARCHAEO_SOULSTONE,
50;ARCHAEO_UNKNOWN,
25;ARCHAEO_HANDCUFFS,
25;ARCHAEO_BEARTRAP,
10;ARCHAEO_KATANA,
10;ARCHAEO_CLAYMORE,
+ 10;ARCHAEO_CLUB,
10;ARCHAEO_SHARD,
10;ARCHAEO_RODS,
10;ARCHAEO_METAL,
@@ -108,6 +113,7 @@ var/global/list/finds_as_strings = list(
75;ARCHAEO_LASER,
75;ARCHAEO_KATANA,
75;ARCHAEO_CLAYMORE,
+ 75;ARCHAEO_CLUB,
50;ARCHAEO_UNKNOWN,
50;ARCHAEO_CULTROBES,
50;ARCHAEO_CULTBLADE,
@@ -116,3 +122,5 @@ var/global/list/finds_as_strings = list(
25;ARCHAEO_HANDCUFFS,
25;ARCHAEO_BEARTRAP,
25;ARCHAEO_TOOL)
+ if(DIGSITE_MIDDEN)
+ . = rand(1, MAX_ARCHAEO)
diff --git a/icons/obj/xenoarchaeology.dmi b/icons/obj/xenoarchaeology.dmi
index d500a48be0..b4179bcb3a 100644
Binary files a/icons/obj/xenoarchaeology.dmi and b/icons/obj/xenoarchaeology.dmi differ