Chat Tutorial in NetBeans/Text Client: Difference between revisions
Content deleted Content added
imported>SimonSmall Added building the Text Client |
imported>SimonSmall small correction |
||
Line 1:
== Introduction ==
These instructions are a continuation of the Chat Tutorial. This is a text based client that runs in a command / terminal window.
== NetBeans Project ==
In the NetBeans IDE,
The empty Project is created in NetBeans. Under the Files tab you will see the directory structure it has also generated; check this using your file explorer.
Line 14 ⟶ 13:
=== Client Files ===
The following files need to be created, as they are not present in the marauroa source file
==== Client.java ====
Right-click on the client package and add a new Java Class. Give the class name as Client. Add the following code:
<source lang="Java">
package client;
import java.util.ArrayList;▼
import java.util.HashMap;▼
import java.util.List;▼
import java.util.Map;
▲import java.util.List;
▲import java.util.HashMap;
▲import java.util.ArrayList;
import marauroa.client.ClientFramework;
import marauroa.client.net.IPerceptionListener;
Line 77 ⟶ 75:
}
@Override
protected void onPerception(MessageS2CPerception message) {
try {
Line 84 ⟶ 83:
}
}
@Override
protected List<TransferContent> onTransferREQ(List<TransferContent> items) {
return items;
}
@Override
protected void onTransfer(List<TransferContent> items) {
}
@Override
protected void onAvailableCharacters(String[] characters) {
available_characters = characters;
}
@Override
protected void onServerInfo(String[] info) {
for (String s : info) {
Line 101 ⟶ 104:
}
}
@Override
protected String getGameName() {
return "Chat";
}
@Override
protected String getVersionNumber() {
return "0.5";
}
@Override
protected void onPreviousLogins(List<String> previousLogins) {
}
class PerceptionListener implements IPerceptionListener {
@Override
public boolean onAdded(RPObject object) {
if (object.has("text")) {
Line 120 ⟶ 128:
return false;
}
@Override
public boolean onModifiedAdded(RPObject object, RPObject changes) {
return false;
}
@Override
public boolean onModifiedDeleted(RPObject object, RPObject changes) {
return false;
}
@Override
public boolean onDeleted(RPObject object) {
return false;
}
@Override
public boolean onMyRPObject(RPObject added, RPObject deleted) {
return false;
}
@Override
public void onSynced() {
}
@Override
public void onUnsynced() {
}
@Override
public void onException(Exception e, marauroa.common.net.message.MessageS2CPerception perception) {
e.printStackTrace();
System.exit(-1);
}
@Override
public boolean onClear() {
return false;
}
public void onPerceptionBegin(byte type, int timestamp) {
}
public void onPerceptionEnd(byte type, int timestamp) {
}
| |||