Playtime Command #285
@ -40,7 +40,7 @@ public class PlaytimeCommand extends BasicCommand{
|
||||
if(!(sender instanceof ProxiedPlayer))
|
||||
|
||||
return;
|
||||
YoyoNow markierte diese Unterhaltung als gelöst
Veraltet
YoyoNow
hat
Vllt sollte hier eine neue Nachricht gewählt werden, damit der User besser versteht was für ein Wert er erhält. Vllt sollte hier eine neue Nachricht gewählt werden, damit der User besser versteht was für ein Wert er erhält.
|
||||
|
||||
YoyoNow markierte diese Unterhaltung als gelöst
Veraltet
YoyoNow
hat
Diese Variable könnte man inlinen, da diese nur einmal verwendet wird. Diese Variable könnte man inlinen, da diese nur einmal verwendet wird.
|
||||
NumberFormat format = NumberFormat.getNumberInstance(LocaleUtils.toLocale(Message.parse("DECIMAL_FORMAT", sender)));
|
||||
NumberFormat format = NumberFormat.getNumberInstance(((ProxiedPlayer)sender).getLocale());
|
||||
YoyoNow markierte diese Unterhaltung als gelöst
Veraltet
YoyoNow
hat
Vllt sollte man auch eine Zeile mehr hier hinter schmeißen. Vllt sollte man auch eine Zeile mehr hier hinter schmeißen.
YoyoNow
hat
Hier bitte die Locale des Spielers nutzen. Du könntest es auch mit:
lösen. Und dann müsste in der Hier bitte die Locale des Spielers nutzen. Du könntest es auch mit:
```java
String s = Message.parse("TIME_FORMAT", sender);
new DecimalFormat(s).format(...)
```
lösen. Und dann müsste in der `.properties` datei ein key für 'TIME_FORMAT'.
YoyoNow
hat
Hier wtf? Hier wtf?
YoyoNow
hat
`HOURS_PLAYED`:
```java
Message.send("HOURS_PLAYED", sender, format);
```
Lixfel
hat
YoyoNow, sr, aber dein Lösungsanschlag hier ist schlicht falsch. Das mit NumberFormat ist der korrekte Weg (wenn auch mit player.getLocale()). YoyoNow, sr, aber dein Lösungsanschlag hier ist schlicht falsch. Das mit NumberFormat ist der korrekte Weg (wenn auch mit player.getLocale()).
Lixfel
hat
Sr, das kann so nicht funktionieren und ist im allgemeinen nicht ganz so schön. Bitte zurück zu NumberFormat. Sr, das kann so nicht funktionieren und ist im allgemeinen nicht ganz so schön. Bitte zurück zu NumberFormat.
YoyoNow hat da einen ganz schlechten Tipp/Empfehlung gegeben, sr.
YoyoNow
hat
Ich habe nur auch eine alternative gesagt, nicht welche man verwenden soll. Ich habe nur auch eine alternative gesagt, nicht welche man verwenden soll.
Lixfel
hat
Was zum Henker machst du denn da schon wieder? Vergiss LocalUtils und DECIMAL_FORMAT. Nimm Dein Code kann nicht funktionieren, denn wie sollen die LocaleUtils denn aus deinem String "###,##" die korrekte Sprache herausfinden, um diese dann dem NumberFormat zu übergeben? NumberFormat weiß selbst, wie die Zahlen in einer Sprache korrekt formatiert werden. Was zum Henker machst du denn da schon wieder? Vergiss LocalUtils und DECIMAL_FORMAT. Nimm `NumberFormat.getNumberInstance(((ProxiedPlayer)sender).getLocale())`.
Dein Code kann nicht funktionieren, denn wie sollen die LocaleUtils denn aus deinem String "###,##" die korrekte Sprache herausfinden, um diese dann dem NumberFormat zu übergeben? NumberFormat weiß selbst, wie die Zahlen in einer Sprache korrekt formatiert werden.
|
||||
format.setMaximumFractionDigits(2);
|
||||
String formattedText = format.format((SteamwarUser.get((ProxiedPlayer) sender).getOnlinetime() / (double) 3600));
|
||||
YoyoNow markierte diese Unterhaltung als gelöst
Veraltet
YoyoNow
hat
Hier keine Leerzeile. Hier keine Leerzeile.
|
||||
|
||||
YoyoNow markierte diese Unterhaltung als gelöst
Veraltet
YoyoNow
hat
Was machst du hier? Was machst du hier?
|
||||
|
@ -570,5 +570,4 @@ GDPR_STATUS_LOGS=§7Suche und packe logs...
|
||||
GDPR_STATUS_FINISHED=§7Packen abgeschlossen
|
||||
|
||||
#Playtime Command
|
||||
HOURS_PLAYED=§7Deine Spielzeit beträgt§8: §e{0}h
|
||||
DECIMAL_FORMAT=###,##
|
||||
HOURS_PLAYED=§7Deine Spielzeit beträgt§8: §e{0}h
|
Ich würde mir noch wünschen, dass dieses DecimalFormat vllt auch im deutschen dann mit ',' ist. Ich wüsste aber nicht wie der DecimalFormat genaut funktioniert.
Ein
TIME_FORMAT
gibt es nicht, dass hast du umbenannt inDECIMAL_FORMAT
.