Welcome to my blog. I mainly blog about the basics of running Flash games over the internet, but sometimes I get distracted. Here you will find my efforts at programming turn based Flash games, plus links to all the games I have written. You are free (as in beer) to get all the code, just email me - nicolas_evans at yahoo.com (sorry you cant click on it - I dont want more spam).
Building Multiplayer Games in Flash.
<%@ page import = "java.io.*" %>
<%
synchronized(page) {
int intVariableCount = 12;
String filename = request.getParameter("filename");
String action = request.getParameter("action");
int intErrorNumber;
int intTemp;
try {
intTemp = Integer.parseInt(filename);
}
catch (NumberFormatException nfe) {
intErrorNumber = 7;
out.println ("v=v&nErrorNumber=" + intErrorNumber);
return;
}
// Create a Blank File if it doesn't already exist
File fileObject = new File("/users/nicolasevans/" + filename + ".txt");
if (!fileObject.exists() ) {
fileObject.createNewFile();
}
// Read the file in
String[] arVariables;
arVariables = new String[intVariableCount];
FileReader fileRead = new FileReader(fileObject);
BufferedReader buffFileIn = new BufferedReader(fileRead);
String strLine = "";
int intCount = 0;
while ((strLine=buffFileIn.readLine()) != null)
if (intCount < intVariableCount) arVariables[intCount++] = strLine;
buffFileIn.close();
fileRead.close();
// Fill in any missing data with none/0
for (int i = intCount; i < intVariableCount ; i++) {
arVariables[i] = " ";
}
// Process the actions
// Insert a score/name
if (action.equals("INSERT")) {
intErrorNumber = 0;
// Abandon message if not later than the file
arVariables[0] = request.getParameter("pno");
if (Integer.parseInt(arVariables[0]) != 1
&& Integer.parseInt(arVariables[0]) != 2) {
intErrorNumber = 1;
}
if (!arVariables[1].equals(" ") && Integer.parseInt(arVariables[1])
>= Integer.parseInt(request.getParameter("nTurn") )) {
intErrorNumber = 2;
}
arVariables[1] = request.getParameter("nTurn");
try {
intTemp = Integer.parseInt(request.getParameter("rnd"));
}
catch (NumberFormatException nfe) {
intErrorNumber = 3;
}
arVariables[2] = request.getParameter("rnd");
try {
intTemp = Integer.parseInt(request.getParameter("p2score"));
}
catch (NumberFormatException nfe) {
intErrorNumber = 6;
}
arVariables[3]= request.getParameter("p2score");
arVariables[4] = request.getParameter("pwd");
arVariables[5] = request.getParameter("p1hand");
arVariables[6] = request.getParameter("p2hand");
arVariables[7] = request.getParameter("board");
arVariables[8] = request.getParameter("order");
arVariables[9] = request.getParameter("p1toopen");
arVariables[10]= request.getParameter("p2toopen");
try {
intTemp = Integer.parseInt(request.getParameter("p1score"));
}
catch (NumberFormatException nfe) {
intErrorNumber = 5;
}
arVariables[11]= request.getParameter("p1score");
try {
intTemp = Integer.parseInt(request.getParameter("messageID"));
}
catch (NumberFormatException nfe) {
intErrorNumber = 8;
}
if (intErrorNumber == 0) {
// create a new file with the variables passed in
fileObject.createNewFile();
FileOutputStream fileStream = new FileOutputStream(fileObject);
DataOutputStream dataStream = new DataOutputStream(fileStream);
for (int i=0;i < intVariableCount;i++) {
dataStream.writeBytes(arVariables[i] + "\n");
}
dataStream.close();
fileStream.close();
intTemp = Integer.parseInt(request.getParameter("messageID")) + 1;
out.println ("v=v&messageID=" + intTemp);
}
else {
out.println ("v=v&nErrorNumber=" + intErrorNumber);
return;
}
}
// Clear the list
else if (action.equals("CLEAR")) {
out.println("deleting");
fileObject.delete();
}
else if (action.equals("VIEW")) {
// return the variables from the file
out.println ("v=v&nErrorNumber=0");
out.println ("&pno=" + arVariables[0] );
out.println ("&nTurn=" + arVariables[1] );
out.println ("&rnd=" + arVariables[2] );
out.println ("&p2score=" + arVariables[3] );
out.println ("&pwd=" + arVariables[4] );
out.println ("&p1hand=" + arVariables[5] );
out.println ("&p2hand=" + arVariables[6] );
out.println ("&board=" + arVariables[7] );
out.println ("&order=" + arVariables[8] );
out.println ("&p1toopen=" + arVariables[9] );
out.println ("&p2toopen=" + arVariables[10] );
out.println ("&p1score=" + arVariables[11] );
}
}
%>
If you understand Java you can see its very simple. If not, I hope the comments help.
Play
Fish Or Foul
Play
Mammoths