View Single Post
  #4  
Old 10-12-2011, 09:31 AM
FG28_Kodiak FG28_Kodiak is offline
Approved Member
 
Join Date: Dec 2009
Location: Swabia->Bavaria->Germany
Posts: 884
Default

Could it be that GamePlay.gpPlayer is the server on dedicated?

Could you please test it with:
Code:
using System;
using System.Collections;
using System.Collections.Generic;
using maddox.game;
using maddox.game.world;


public class Mission : AMission
{

    #region MessageSystem

    private void sendScreenMessageTo(int army, string msg, object[] parms)
    {
        List<Player> Players = new List<Player>();

        //Singleplayer or Dedi Server
        if (GamePlay.gpPlayer() != null)
        {
                if (GamePlay.gpPlayer().Army() == army || army == -1)
                    Players.Add(GamePlay.gpPlayer());
        } // Multiplayer
        if (GamePlay.gpRemotePlayers() != null || GamePlay.gpRemotePlayers().Length > 0)
        {
            foreach (Player p in GamePlay.gpRemotePlayers())
            {
                if (p.Army() == army || army == -1)
                    Players.Add(p);
            }
        }
        if (Players != null && Players.Count > 0)
            GamePlay.gpHUDLogCenter(Players.ToArray(), msg, parms);
    }


    private void sendChatMessageTo(int army, string msg, object[] parms)
    {
        List<Player> Players = new List<Player>();

        //Singleplayer or Dedi Server
        if (GamePlay.gpPlayer() != null)
        {
            if (GamePlay.gpPlayer().Army() == army || army == -1)
                Players.Add(GamePlay.gpPlayer());
        } // Multiplayer
        if (GamePlay.gpRemotePlayers() != null || GamePlay.gpRemotePlayers().Length > 0)
        {
            foreach (Player p in GamePlay.gpRemotePlayers())
            {
                if (p.Army() == army || army == -1)
                    Players.Add(p);
            }
        }
        if (Players != null && Players.Count > 0)
            GamePlay.gpLogServer(Players.ToArray(), msg, parms);
    }


    private void sendScreenMessageTo(int army, string playerlanguage, string msg, object[] parms)
    {
        List<Player> Players = new List<Player>();

        //Singleplayer or Dedi Server
        if (GamePlay.gpPlayer() != null)
        {
            if ((GamePlay.gpPlayer().Army() == army || army == -1) && GamePlay.gpPlayer().LanguageName().Equals(playerlanguage))
                Players.Add(GamePlay.gpPlayer());
        } // Multiplayer
        if (GamePlay.gpRemotePlayers() != null || GamePlay.gpRemotePlayers().Length > 0)
        {
            foreach (Player p in GamePlay.gpRemotePlayers())
            {
                if ((p.Army() == army || army == -1) && p.LanguageName().Equals(playerlanguage))
                    Players.Add(p);
            }
        }
        if (Players != null && Players.Count > 0)
            GamePlay.gpHUDLogCenter(Players.ToArray(), msg, parms);
    }


    private void sendChatMessageTo(int army, string playerlanguage, string msg, object[] parms)
    {
        List<Player> Players = new List<Player>();

        //Singleplayer or Dedi Server
        if (GamePlay.gpPlayer() != null)
        {
            if ((GamePlay.gpPlayer().Army() == army || army == -1) && GamePlay.gpPlayer().LanguageName().Equals(playerlanguage))
                Players.Add(GamePlay.gpPlayer());
        } // Multiplayer
        if (GamePlay.gpRemotePlayers() != null || GamePlay.gpRemotePlayers().Length > 0)
        {
            foreach (Player p in GamePlay.gpRemotePlayers())
            {
                if ((p.Army() == army || army == -1) && p.LanguageName().Equals(playerlanguage))
                    Players.Add(p);
            }
        }
        if (Players != null && Players.Count > 0)
            GamePlay.gpLogServer(Players.ToArray(), msg, parms);
    }


    private void sendChatMessageTo(int army, string[] exepttoplayerlanguages, string msg, object[] parms)
    {
        List<Player> Players = new List<Player>();

        //Singleplayer or Dedi Server
        if (GamePlay.gpPlayer() != null)
        {
            if (GamePlay.gpPlayer().Army() == army || army == -1)
                Players.Add(GamePlay.gpPlayer());
        } // Multiplayer
        if (GamePlay.gpRemotePlayers() != null || GamePlay.gpRemotePlayers().Length > 0)
        {
            foreach (Player p in GamePlay.gpRemotePlayers())
            {
                if (p.Army() == army || army == -1) 
                    Players.Add(p);
            }
        }

        foreach (string st in exepttoplayerlanguages)
        {
            Players.RemoveAll(item => item.LanguageName().Equals(st));
        }

        if (Players != null && Players.Count > 0)
            GamePlay.gpLogServer(Players.ToArray(), msg, parms);
    }


    private void sendScreenMessageTo(int army, string[] exepttoplayerlanguages, string msg, object[] parms)
    {
        List<Player> Players = new List<Player>();

        foreach (string st in exepttoplayerlanguages)
        {
            //Singleplayer or Dedi Server
            if (GamePlay.gpPlayer() != null)
            {
                if (GamePlay.gpPlayer().Army() == army || army == -1)
                    Players.Add(GamePlay.gpPlayer());
            } // Multiplayer
            if (GamePlay.gpRemotePlayers() != null || GamePlay.gpRemotePlayers().Length > 0)
            {
                foreach (Player p in GamePlay.gpRemotePlayers())
                {
                    if (p.Army() == army || army == -1)
                        Players.Add(p);
                }
            }
        }
        foreach (string st in exepttoplayerlanguages)
        {
            Players.RemoveAll(item => item.LanguageName().Equals(st));
        }

        if (Players != null && Players.Count > 0)
            GamePlay.gpHUDLogCenter(Players.ToArray(), msg, parms);
    }


    private void sendChatMessageTo(Player player, string msg, object[] parms)
    {
        if (player != null)
            GamePlay.gpLogServer(new Player[] { player }, msg, parms);
    }


    private void sendScreenMessageTo(Player player, string msg, object[] parms)
    {
        if (player != null)
            GamePlay.gpHUDLogCenter(new Player[] { player }, msg, parms);
    }


    private void sendChatMessageTo(Player player, string playerlanguage, string msg, object[] parms)
    {
        if (player != null)
            if (player.LanguageName().Equals(playerlanguage))
                GamePlay.gpLogServer(new Player[] { player }, msg, parms);
    }


    private void sendScreenMessageTo(Player player, string playerlanguage, string msg, object[] parms)
    {
        if (player != null)
            if (player.LanguageName().Equals(playerlanguage))
                GamePlay.gpHUDLogCenter(new Player[] { player }, msg, parms);
    }
    
    
    private void sendChatMessageTo(Player player, string[] exepttoplayerlanguages, string msg, object[] parms)
    {

        List<Player> Players = new List<Player>();
        
        if (player != null)
            Players.Add(player);    
        
        foreach (string st in exepttoplayerlanguages)
        {
            if(Players != null)
                Players.RemoveAll(item => item.LanguageName().Equals(st));
        }

        if (Players != null && Players.Count > 0)
            GamePlay.gpLogServer(Players.ToArray(), msg, parms);
    }
 
   
    private void sendScreenMessageTo(Player player, string[] exepttoplayerlanguages, string msg, object[] parms)
    {
        List<Player> Players = new List<Player>();
        
        if (player != null)
            Players.Add(player);    
        
        foreach (string st in exepttoplayerlanguages)
        {
            if (Players != null)
                Players.RemoveAll(item => item.LanguageName().Equals(st));
        }

        if (Players != null && Players.Count > 0)
            GamePlay.gpHUDLogCenter(Players.ToArray(), msg, parms);
    }
    
    #endregion

}

Last edited by FG28_Kodiak; 10-12-2011 at 11:33 AM.
Reply With Quote