phudbase/
phudbase/client/
phudbase/client/css/
phudbase/client/images/colorbox/CVS/
phudbase/client/js/
phudbase/server/
phudbase/server/includes/actions/
phudbase/server/includes/classes/
phudbase/server/includes/classes/GameObjects/
var socket;
var conn_div;
var num_msgs;
var mode;
var wshost = 'ws://127.0.0.1:12345/phudbase/server/game.php'

$(document).ready(function(){		    
	conn_div = document.getElementById('connection');
	num_msgs = 0;	
	
	if ("WebSocket" in window)
	{
		mode = "websocket";
		
		socket = new WebSocket(wshost);	
		
		socket.onmessage = function(evt) {
				handle_read(evt.data);
		}
	    
	    socket.onclose = function(evt) {
	    	conn_div.style.background = "red";
	        conn_div.innerHTML = "<p style='font-size: 1.25em; font-weight: bold; color: #fff;'>DISCONNECTED</p>";		             
	    }
	    
	    socket.onopen = function(evt) {
	        conn_div.style.background = "green";
	        conn_div.innerHTML = "<p style='font-size: 1.5em; font-weight: bold; color: #fff;'>CONNECTED</p>";
	        ow_Write("<div id='login_area'>Type a name for your Character and press Enter.<br><br><form onsubmit='sendDirect(document.getElementById(\"login\").value); postLogin(); return false;'><input id='login' type='text'></form></div>");        
	    }
		
	} else {
		alert("Your browser doesn't support WebSockets! Try Google Chrome to play.");		
	}		      									
});	

function postLogin() 
{
	$("#data_form").fadeIn(500);
	$("#look_button").fadeIn(500);
	$("#login_area").remove();
}

var sendDirect = function(data) {
	socket.send(data);	
}

var send = function() {
	s = document.getElementById("data").value;
    print(s, "#999");
    socket.send(s);
    document.getElementById("data").value = "";
}

var print = function(s) {
	   
    var color = "#ccc";
    if (typeof(arguments[1]) != undefined)
        color = arguments[1];
    
    ow_Write("<span style='color:"+color+ "'>&rarr; " + s + "</span>", true);
}

function handle_read(s)
{
	//eval(s);
	//ow_Write(s);
	data = eval("(" + s + ")");
	
	if (data.message) ow_Write(data.message);
	if (data.mapdata) map_Write(data.mapdata);
	if (data.oldroom) document.getElementById(data.oldroom).style.border = "2px solid #000";
	if (data.newroom) document.getElementById(data.newroom).style.border = "2px solid #ff0000";	
	if (data.rcdata) rc_Write(data.rcdata);
	if (data.server_status) ss_Write(data.server_status);
}

function login()
{
	uname = document.getElementById('username');
	upass = document.getElementById('password');
	
	var lstring = "LOGIN " + uname.value + ":" + upass.value;
	
	socket.send(lstring);
	
	$('#login').remove();
	document.getElementById("login_area").innerHTML = "<span style='color: #cbd3ff'>Please wait while your existence in the world of dragons is verified....</span><br><br>";
}

function ow_Write(text,nodelay)
{	
	var objDiv = window.top.document.getElementById("output");
	var nID = "msg" + num_msgs;
	
	//if (nodelay == true)
	//{
		objDiv.innerHTML += "<div id='" + nID + "' style='margin-bottom: 10px;'>" + text + "</div>";	
	//} else {
	//	objDiv.innerHTML += "<div id='" + nID + "' class='msg' style='display: none; margin-bottom: 10px;'>" + text + "</div>";
		
	//	$(("#msg"+num_msgs)).fadeIn(50);		
	//}
	
	num_msgs++;
	
	objDiv.scrollTop = objDiv.scrollHeight;	
}

function rc_Write(text)
{
	window.top.document.getElementById("room_content").innerHTML = text;
}

function map_Write(text)
{
	window.top.document.getElementById("map").innerHTML = text;
}

function ss_Write(text)
{
	window.top.document.getElementById("server_status").innerHTML = text;
}

function expandHeight(eid)
{
	document.getElementById(eid).style.visibility = 'visible';
	document.getElementById(eid).style.position = "relative";
	document.getElementById(eid).style.width = "99%";
	document.getElementById(eid).style.overflow = "visible";
}

function shrinkHeight(eid)
{
	document.getElementById(eid).style.visibility = 'hidden';
	document.getElementById(eid).style.position = "absolute"
	document.getElementById(eid).style.width = "0";
	document.getElementById(eid).style.overflow = "hidden";
}

function setDD(tdid)
{
	document.getElementById(tdid).style.background = "#cbd3ff";
}

function unsetDD(tdid)
{
	document.getElementById(tdid).style.background = "#98a7ff";
}