diff --git a/code/datums/diseases/_disease.dm b/code/datums/diseases/_disease.dm
index 519ee6a946e..954446639f3 100644
--- a/code/datums/diseases/_disease.dm
+++ b/code/datums/diseases/_disease.dm
@@ -6,7 +6,7 @@
//Disease Flags
#define CURABLE 1
#define CAN_CARRY 2
-#define CAN_RESIST 3
+#define CAN_RESIST 4
//Spread Flags
#define SPECIAL 1
diff --git a/code/datums/diseases/appendicitis.dm b/code/datums/diseases/appendicitis.dm
index ee249664ab5..cf71a660a34 100644
--- a/code/datums/diseases/appendicitis.dm
+++ b/code/datums/diseases/appendicitis.dm
@@ -12,12 +12,10 @@
disease_flags = CAN_CARRY|CAN_RESIST
spread_flags = NON_CONTAGIOUS
visibility_flags = HIDDEN_PANDEMIC
- required_organs = list(/obj/item/organ/limb/chest)
-
+ required_organs = list(/obj/item/organ/internal/appendix)
/datum/disease/appendicitis/stage_act()
..()
-
switch(stage)
if(1)
if(prob(5))
diff --git a/code/modules/events/spontaneous_appendicitis.dm b/code/modules/events/spontaneous_appendicitis.dm
index 6219d1fda69..11e8d74923e 100644
--- a/code/modules/events/spontaneous_appendicitis.dm
+++ b/code/modules/events/spontaneous_appendicitis.dm
@@ -14,5 +14,5 @@
continue
var/datum/disease/D = new /datum/disease/appendicitis
- H.AddDisease(D)
+ H.ForceContractDisease(D)
break
\ No newline at end of file
diff --git a/code/modules/surgery/appendectomy.dm b/code/modules/surgery/appendectomy.dm
index c89d1776deb..9355890cb5f 100644
--- a/code/modules/surgery/appendectomy.dm
+++ b/code/modules/surgery/appendectomy.dm
@@ -24,6 +24,9 @@
user.visible_message("[user] successfully removes [target]'s appendix!", "You successfully removes [target]'s appendix.")
A.loc = get_turf(target)
A.Remove(target)
+ for(var/datum/disease/appendicitis in target.viruses)
+ appendicitis.cure()
+ target.resistances += /datum/disease/appendicitis
else
user << "You can't find an appendix in [target]!"
- return 1
\ No newline at end of file
+ return 1