public virtual void RemoveBuffs() { Creature c = this.Obj as Creature; c.IsInvulnerable = false; foreach (Player plr in c.PlayersInRange.ToList()) { c.SendMeTo(plr); } }
public override void RemoveBuffs() { Creature c = this.Obj as Creature; c.Say("Feel my wrath!", SystemData.ChatLogFilters.CHATLOGFILTERS_MONSTER_SAY); c.IsInvulnerable = false; foreach (Player plr in c.PlayersInRange.ToList()) { c.SendMeTo(plr); } }
public void ChangeModel(Creature c, byte enable) { PacketOut Out = new PacketOut((byte)Opcodes.F_OBJECT_EFFECT_STATE, 6); Out.WriteUInt16(c.Oid); Out.WriteByte(1); Out.WriteByte(6); // This is probably Squig Armor Out.WriteByte(enable); // active Out.WriteByte(0); foreach (Player plr in c.PlayersInRange.ToList()) { c.SendMeTo(plr); plr.SendPacket(Out); } }
public void SetInvisible(string name = "") { Creature c = Obj as Creature; c.Model1 = 999; // Invisi-dude if (name != "") { c.Name = name; } foreach (Player player in c.PlayersInRange.ToList()) { c.SendMeTo(player); } }
public void SetVisible(string name = "") { Creature c = Obj as Creature; c.Model1 = c.Spawn.Proto.Model1; // Invisi-dude if (name != "") { c.Name = name; } c.PlayEffect(2185); foreach (Player player in c.PlayersInRange.ToList()) { c.SendMeTo(player); } }
static public void F_QUEST(BaseClient client, PacketIn packet) { GameClient cclient = client as GameClient; UInt16 QuestID = packet.GetUint16(); UInt16 State = packet.GetUint16(); UInt16 Unk1 = packet.GetUint16(); byte Unk2 = packet.GetUint8(); byte Unk3 = packet.GetUint8(); UInt16 Unk4 = packet.GetUint16(); UInt16 CreatureOID = packet.GetUint16(); Creature Crea = cclient.Plr.Region.GetObject(CreatureOID) as Creature; if (Crea == null) { return; } switch (State) { case 1: // Show Quest { if (Crea.QtsInterface.HasQuestStarter(QuestID)) { Crea.QtsInterface.BuildQuest(QuestID, cclient.Plr); } } break; case 2: // Accept Quest { if (Crea.QtsInterface.HasQuestStarter(QuestID)) { if (cclient.Plr.QtsInterface.AcceptQuest(QuestID)) { if (!Crea.QtsInterface.CreatureHasStartQuest(cclient.Plr)) { Crea.SendRemove(cclient.Plr); Crea.SendMeTo(cclient.Plr); } } } } break; case 3: // Quest Done { if (Crea.QtsInterface.hasQuestFinisher(QuestID)) { if (cclient.Plr.QtsInterface.DoneQuest(QuestID)) { Crea.SendRemove(cclient.Plr); Crea.SendMeTo(cclient.Plr); } } } break; case 4: // Quest Done Info { if (Crea.QtsInterface.hasQuestFinisher(QuestID)) { Crea.QtsInterface.SendQuestDoneInfo(cclient.Plr, QuestID); } else if (Crea.QtsInterface.HasQuestStarter(QuestID)) { Crea.QtsInterface.SendQuestInProgressInfo(cclient.Plr, QuestID); } } break; case 5: // Select Quest Reward { if (Crea.QtsInterface.hasQuestFinisher(QuestID)) { cclient.Plr.QtsInterface.SelectRewards(QuestID, Unk3); } } break; } ; }