multiplayer countdown timer c#

hello! i want to make a countdown timer when all players join a room. Problem is the code doesnt print timer on players screen, any ideas?

if (Network.isServer) {
		players += count;	
		if (players == allplayers) {
			networkView.RPC ("countTime", RPCMode.Server,Time.time);
			}
		}
   
 [RPC]void countTime(float startTime)
    	{ 	
    		if (Network.isServer) {
    						remainingTime = Time.time - startTime;
    						restSeconds = countDownSeconds - (remainingTime);
    						if (restSeconds < 0) {
    								restSeconds = 0.0f;
    						}
    		
    						//display the timer
    						roundedRestSeconds = Mathf.CeilToInt (restSeconds);
    						displaySeconds = roundedRestSeconds % 60;
    						displayMinutes = (roundedRestSeconds / 60) % 60; 
    						text = string.Format ("{0:00}:{1:00}", displayMinutes, displaySeconds); 
    						networkView.RPC ("setTimer", RPCMode.All, text);
    						if (displaySeconds == 0 && displayMinutes == 0) {
    			
    								networkView.RPC ("TimesUP", RPCMode.All, true);
    						}
    				}
    	}
[RPC]void setTimer(string text)
	{
		this.text=text;
	}

which i print with GUI.Label OnGUI() function

I’m not entirely sure but I think that if you make an RPC call to the server from the server itself, it doesn’t work.

The reason probably is that you don’t need an RPC call in this situation.
In the beginning you are checking if you are on the server and, if so, you make an RPC call to the server for “countTime”. But since you are in the same process, you can call the “countTime” method directly, no need for RPC.

So countTime can be a normal method, called in the normal way.