Du bist nicht angemeldet.

Lieber Besucher, herzlich willkommen bei: Banana-Coding.com - Java Knuddels Emulator. Falls dies dein erster Besuch auf dieser Seite ist, lies bitte die Hilfe durch. Dort wird dir die Bedienung dieser Seite näher erläutert. Darüber hinaus solltest du dich registrieren, um alle Funktionen dieser Seite nutzen zu können. Benutze das Registrierungsformular, um dich zu registrieren oder informiere dich ausführlich über den Registrierungsvorgang. Falls du dich bereits zu einem früheren Zeitpunkt registriert hast, kannst du dich hier anmelden.

Localhost

Ehemaliger Supporter

  • »Localhost« ist der Autor dieses Themas

Beiträge: 345

Wohnort: 127.0.0.1

  • Private Nachricht senden

1

Donnerstag, 12. April 2012, 04:38

Billard List

Vorschau



Erst werden die Funktionen gesendet, die automatisch getätigt werden, wenn man z.B. in der Nickliste einen Links- oder Rechtsklick macht:

Java-Quelltext

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
public static String updateBillardFunctions(String channel) {
    	PacketBuilder buffer = new PacketBuilder(SendOpcode.UPDATE_BILLARD_FUNCTIONS.getValue());
    	
    	buffer.writeByte(0x00);
    	buffer.writeString(channel);
    	buffer.writeByte(0x00);
    	buffer.writeString("l");
    	buffer.writeByte(0x00);
    	buffer.writeString("/billard j:"); // join
    	buffer.writeByte(0x00);
    	buffer.writeString("L");
    	buffer.writeByte(0x00);
    	buffer.writeString("/billard j:"); // join
    	buffer.writeByte(0x00);
    	buffer.writeString("r");
    	buffer.writeByte(0x00);
    	buffer.writeString("/billard i:"); // info
    	buffer.writeByte(0x00);
    	buffer.writeString("R");
    	buffer.writeByte(0x00);
    	buffer.writeString("/billard i:"); // info
    	buffer.writeByte(0x00);
    	buffer.writeString("m");
    	buffer.writeByte(0x00);
    	buffer.writeString("/billard j:"); // join

    	return buffer.toString();
	}


Usage:

Java-Quelltext

1
client.send(PacketCreator.updateBillardFunctions(channel.getName()));


Nun wird die eigentliche Liste gesendet:

Java-Quelltext

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
public static String billardList(String channel, String text) {
    	PacketBuilder buffer = new PacketBuilder(SendOpcode.BILLARD_LIST.getValue());
    	
    	buffer.writeByte(0x00);
    	buffer.writeString("u");
    	buffer.writeByte(0x00);
    	buffer.writeString(channel);
    	buffer.writeByte(0x00);
    	buffer.writeString(text); // Der Text, der in dem Button steht
    	buffer.writeByte(0x00);
    	buffer.writeString("p");
    	buffer.writeByte(0x00);
    	buffer.writeString("-");
    	buffer.writeByte(0x00);
    	buffer.writeString("-");

    	return buffer.toString();
	}


Usage:

Java-Quelltext

1
client.send(PacketCreator.billardList(channel.getName(), "+Spiel eröffnen"));


Wenn man den Channel verlässt, muss die Billard List auch wieder ausgeblendet werden:

Java-Quelltext

1
2
3
4
5
6
7
8
public static String closeBillardList(String channel) {
    	PacketBuilder buffer = new PacketBuilder(SendOpcode.CLOSE_BILLARD_LIST.getValue());
    	
    	buffer.writeByte(0x00);
    	buffer.writeString(channel);

    	return buffer.toString();
	}


Usage:

Java-Quelltext

1
client.send(PacketCreator.closeBillardList(channel.getName()));


Dann können wir noch Einträge in die Liste tätigen:

Java-Quelltext

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
public static String billardListAddNick(Channel channel, Client nick) {
    	PacketBuilder buffer = new PacketBuilder(SendOpcode.BILLARD_LIST.getValue());
    	
    	buffer.writeByte(0x00);
    	buffer.writeString("l");
    	buffer.writeByte(0x00);
    	buffer.writeString(channel.getName());
    	buffer.writeByte(0x00);
    	buffer.writeString(nick.getName());
    	buffer.writeByte(0x00);
    	buffer.writeString("p");
    	buffer.writeByte(0x00);
    	buffer.writeString(channel.getStyle().getRankColor(nick));
    	buffer.writeByte(0x00);
    	buffer.writeString("-");

    	return buffer.toString();
	}


Usage:

Java-Quelltext

1
client.send(PacketCreator.billardListAddNick(channel, client));


...und diese auch wieder löschen:

Java-Quelltext

1
2
3
4
5
6
7
8
9
10
11
12
public static String billardListRemoveNick(String channel, String nick) {
    	PacketBuilder buffer = new PacketBuilder(SendOpcode.BILLARD_LIST.getValue());
    	
    	buffer.writeByte(0x00);
    	buffer.writeString("w");
    	buffer.writeByte(0x00);
    	buffer.writeString(nick);
    	buffer.writeByte(0x00);
    	buffer.writeString(channel);

    	return buffer.toString();
	}


Usage:

Java-Quelltext

1
client.send(PacketCreator.billardListRemoveNick(channel.getName(), client.getName()));


Zum Schluss fehlen noch die Einträge in der SendOpcode Klasse im Package knuddels:

Java-Quelltext

1
2
3
CLOSE_BILLARD_LIST("9"),
	BILLARD_LIST("0"),
	UPDATE_BILLARD_FUNCTIONS("8")


# Localhost
No support via message.

"Der gute Programmierer ist nicht der, der keine Fehler macht, sondern der, der seine Fehler rasch findet und behebt."

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »Localhost« (12. April 2012, 06:27)


Es haben sich bereits 5 registrierte Benutzer bedankt.

Benutzer, die sich für diesen Beitrag bedankt haben:

Diebspiel, Mentos, Steelix2011, Gangstersheep, Hammer132