Einstellbare Schriftgröße in der Nicklist
- Autor: Fif
- Datum: 06.01.2012
Beschreibung
Ich zeige kurz, wie man eine Einstellung für die Schriftgröße für die Nickliste erstellen kann.
Eine andere Schriftgröße für die Nickliste wird zum Beispiel im Channel "Event" in Knuddels.de verwendet.
Schritt 1: MySQL
Als erstes gehen wir in den phpMyAdmin und führen folgenden SQL-Query aus:
|
Java-Quelltext
|
1
|
ALTER TABLE `channelstyles` ADD `nicklistFontSize` TINYINT(3) NOT NULL DEFAULT '15' AFTER `fontSize`;
|
Nun wurde das Feld "nicklistFontSize" in die Tabelle "channelstyles" hinzügefügt.
Schritt 2: Dateiänderungen
Datei: knuddels.ChannelStyle.java
Suche:
|
Java-Quelltext
|
1
|
private byte fontSize;
|
Füge darunter:
|
Java-Quelltext
|
1
|
private byte nicklistFontSize;
|
Suche:
|
Java-Quelltext
|
1
|
fontSize = rs.getByte("fontSize");
|
Füge darunter:
|
Java-Quelltext
|
1
|
nicklistFontSize = rs.getByte("nicklistFontSize");
|
Suche:
|
Java-Quelltext
|
1
2
3
|
public byte getFontSize() {
return fontSize;
}
|
Füge darunter:
|
Java-Quelltext
|
1
2
3
|
public byte getNicklistFontSize() {
return nicklistFontSize;
}
|
Datei: tools.PacketCreator.java
Suche:
|
Java-Quelltext
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
private static void addChannelStyle(PacketBuilder buffer, ChannelStyle style) {
buffer.writeByte(0x00);
buffer.writeString(style.getForeground());
buffer.writeByte(0x00);
buffer.writeString(style.getBackground());
buffer.writeByte(0x00);
buffer.writeString(style.getRed());
buffer.writeByte(0x00);
buffer.writeString(style.getBlue());
buffer.writeByte(0x00);
buffer.writeString(String.valueOf(style.getFontSize()));
buffer.writeByte(0x00);
buffer.writeString(String.valueOf(style.getLineSpace()));
buffer.writeByte(0x00);
buffer.writeString(String.valueOf(style.getFontSize())); // user list
buffer.writeByte(0x00);
buffer.writeString(style.getBackground()); // user list
buffer.writeByte(0x00);
buffer.writeString("T");
buffer.writeByte(0x00);
buffer.writeString("Lobby");
}
|
Ersetze durch:
|
Java-Quelltext
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
private static void addChannelStyle(PacketBuilder buffer, ChannelStyle style) {
buffer.writeByte(0x00);
buffer.writeString(style.getForeground());
buffer.writeByte(0x00);
buffer.writeString(style.getBackground());
buffer.writeByte(0x00);
buffer.writeString(style.getRed());
buffer.writeByte(0x00);
buffer.writeString(style.getBlue());
buffer.writeByte(0x00);
buffer.writeString(String.valueOf(style.getFontSize()));
buffer.writeByte(0x00);
buffer.writeString(String.valueOf(style.getLineSpace()));
buffer.writeByte(0x00);
buffer.writeString(String.valueOf(style.getNicklistFontSize())); // user list
buffer.writeByte(0x00);
buffer.writeString(style.getBackground()); // user list
buffer.writeByte(0x00);
buffer.writeString("T");
buffer.writeByte(0x00);
buffer.writeString("Lobby");
}
|
Screenshot
Schlusswort
In den meisten Channels wird eine andere Schriftgröße in der Nickliste nicht benötigt, ist in großen Channels aber trotzdem empfehlenswert.