/// <summary> /// Sends DeadMenuR to creature's client. /// </summary> /// <param name="creature"></param> /// <param name="menu">Negative answer if null</param> public static void DeadMenuR(Creature creature, CreatureDeadMenu menu) { var packet = new Packet(Op.DeadMenuR, creature.EntityId); packet.PutByte(menu != null); if (menu != null) { packet.PutString(menu.ToString()); packet.PutInt(creature.Inventory.Count("/notTransServer/nao_coupon/")); // Beginner Nao Stone count packet.PutInt(creature.Inventory.Count("/nao_coupon/")); // Nao Stone Count } creature.Client.Send(packet); }
/// <summary> /// Sends DeadMenuR to creature's client. /// </summary> /// <param name="creature"></param> /// <param name="menu">Negative answer if null</param> public static void DeadMenuR(Creature creature, CreatureDeadMenu menu) { var packet = new Packet(Op.DeadMenuR, creature.EntityId); packet.PutByte(menu != null); if (menu != null) { packet.PutString(menu.ToString()); packet.PutInt(0); // Beginner Nao Stone count packet.PutInt(0); // Nao Stone Count } creature.Client.Send(packet); }
public void DeadMenu(ChannelClient client, Packet packet) { var creature = client.GetCreatureSafe(packet.Id); if (!creature.IsDead) { Send.DeadMenuR(creature, null); return; } // ... var menu = new CreatureDeadMenu(); menu.Add(ReviveOptions.HereNoPenalty); Send.DeadMenuR(creature, menu); }