static int RealAddBuff(NPC n, int type, int time, bool quiet = false) { if (n.buffImmune[type]) return -1; if (!quiet) { if (Main.netMode == 1) NetMessage.SendData(53, -1, -1, String.Empty, n.whoAmI, type, time); else if (Main.netMode == 2) NetMessage.SendData(54, -1, -1, String.Empty, n.whoAmI); } for (int i = 0; i < 5; i++) if (n.buffType[i] == type) { if (n.buffTime[i] < time) n.buffTime[i] = time; return -1; } int slot = -1; do { int buffSeek = -1; for (int j = 0; j < 5; j++) if (!Main.debuff[n.buffType[j]]) { buffSeek = j; break; } if (buffSeek == -1) return -1; for (int k = buffSeek; k < 5; k++) if (n.buffType[k] == 0) { slot = k; break; } if (slot == -1) n.DelBuff(buffSeek); } while (slot == -1); n.buffType[slot] = type; n.buffTime[slot] = time; return slot; }