From 468ceee02b8c4a0468be577463ee6ef9dc60086b Mon Sep 17 00:00:00 2001
From: Ridley <ridley8819@gmail.com>
Date: Sat, 26 Mar 2016 13:21:08 +0100
Subject: Fixed SC_OFFERTORIUM and SC_MAGNIFICAT

They should cancel each other, not prevent the usage (like Kyrie and
Assumptio)

Closes #1222 as merged

Signed-off-by: Haru <haru@dotalux.com>
---
 src/map/status.c | 14 +++++++++-----
 1 file changed, 9 insertions(+), 5 deletions(-)

diff --git a/src/map/status.c b/src/map/status.c
index 83d8943c9..39915705d 100644
--- a/src/map/status.c
+++ b/src/map/status.c
@@ -7434,7 +7434,7 @@ int status_change_start(struct block_list *src, struct block_list *bl, enum sc_t
 				return 0;
 			break;
 		case SC_MAGNIFICAT:
-			if (sc->data[SC_OFFERTORIUM] || sc->option&OPTION_MADOGEAR) // Mado is immune to magnificat
+			if (sc->option&OPTION_MADOGEAR) // Mado is immune to magnificat
 				return 0;
 			break;
 		case SC_ONEHANDQUICKEN:
@@ -7637,10 +7637,6 @@ int status_change_start(struct block_list *src, struct block_list *bl, enum sc_t
 			if(sc->data[SC_HOVERING])
 				return 0;
 			break;
-		case SC_OFFERTORIUM:
-			if (sc->data[SC_MAGNIFICAT])
-				return 0;
-			break;
 	}
 
 	//Check for BOSS resistances
@@ -7748,6 +7744,14 @@ int status_change_start(struct block_list *src, struct block_list *bl, enum sc_t
 			//Cancels Assumptio
 			status_change_end(bl, SC_ASSUMPTIO, INVALID_TIMER);
 			break;
+		case SC_MAGNIFICAT:
+			//Cancels Offertorium
+			status_change_end(bl, SC_OFFERTORIUM, INVALID_TIMER);
+			break;
+		case SC_OFFERTORIUM:
+			//Cancels Magnificat
+			status_change_end(bl, SC_MAGNIFICAT, INVALID_TIMER);
+			break;
 		case SC_DELUGE:
 			if (sc->data[SC_FOGWALL] && sc->data[SC_BLIND])
 				status_change_end(bl, SC_BLIND, INVALID_TIMER);
-- 
cgit v1.2.3-70-g09d2