Exemplo n.º 1
0
 public Telegram(double time,
          int sender,
          int receiver,
          int msg,
          TelegramInfo info = null)
 {
     DispatchTime = time;
     Sender = sender;
     Receiver = receiver;
     Msg = msg;
     ExtraInfo = info;
 }
    /// <summary>
    /// 全局方法,提供消息发送的功能
    /// </summary>
    /// <param name="delay">延迟时间(目前不用)</param>
    /// <param name="sender"></param>
    /// <param name="receiver"></param>
    /// <param name="msg"></param>
    /// <param name="ExtraInfo"></param>
    public void DispatchMessage(double  delay,
                                 int    sender,
                                 int    receiver,
                                 int    msg,
                                 TelegramInfo ExtraInfo)
    {

        //  发送消息的Entity
        BaseGameEntity pSender   = EntityManager.Instance().GetEntityFromID(sender);
        //  接收消息的Entity
        BaseGameEntity pReceiver = EntityManager.Instance().GetEntityFromID(receiver);

        //  
        if (pReceiver == null)
            return;
  
        //  消息体
        Telegram telegram = new Telegram(0, sender, receiver, msg, ExtraInfo);
  
        //  发送
        Discharge(pReceiver, telegram);
    }