G-Earth/Extensions/G-Translator_1.0.2/decompiled/gearth/extensions/InternalExtensionBuilder.java
Administrator 368b92d87a G-Earth 1.5.4 beta 22 - Initial release
Komplettes G-Earth Paket inkl. JRE, Extensions und Tools.

Extensions:
- G-BuildTools, G-Click Ultimate, G-Loader, G-Manipulate
- G-Presets, G-Translator, G-Trigger, G-itemViewer
- Market Utils, Packet Info Explorer, Plants
- RandomRoomVisitor, RoomLogger, Sanbovir Photo Inspector
- SpyFriends, WallAligner, XabboScripter, xabbo
2026-03-16 09:45:04 +01:00

145 lines
3.9 KiB
Java

/*
* Decompiled with CFR 0.152.
*/
package gearth.extensions;
import gearth.extensions.InternalExtension;
import gearth.misc.HostInfo;
import gearth.protocol.HMessage;
import gearth.protocol.HPacket;
import gearth.protocol.connection.HClient;
import gearth.services.extension_handler.extensions.ExtensionType;
import gearth.services.extension_handler.extensions.GEarthExtension;
import gearth.services.packet_info.PacketInfoManager;
public class InternalExtensionBuilder
extends GEarthExtension {
private final InternalExtension extension;
public InternalExtensionBuilder(InternalExtension extension) {
this.extension = extension;
extension.setCommunicator(new InternalExtension.InternalExtensionCommunicator(){
@Override
public void sendToClient(HPacket packet) {
InternalExtensionBuilder.this.sendMessage(HMessage.Direction.TOCLIENT, packet);
}
@Override
public void sendToServer(HPacket packet) {
InternalExtensionBuilder.this.sendMessage(HMessage.Direction.TOSERVER, packet);
}
@Override
public void writeToConsole(String s) {
InternalExtensionBuilder.this.log(s);
}
});
}
@Override
public String getAuthor() {
return this.extension.getInfoAnnotations().Author();
}
@Override
public String getDescription() {
return this.extension.getInfoAnnotations().Description();
}
@Override
public String getTitle() {
return this.extension.getInfoAnnotations().Title();
}
@Override
public String getVersion() {
return this.extension.getInfoAnnotations().Version();
}
@Override
public boolean isFireButtonUsed() {
for (Class<?> c = this.extension.getClass(); c != InternalExtension.class; c = c.getSuperclass()) {
try {
c.getDeclaredMethod("onClick", new Class[0]);
return true;
}
catch (NoSuchMethodException noSuchMethodException) {
continue;
}
}
return false;
}
@Override
public boolean isDeleteButtonVisible() {
return this.extension.canDelete();
}
@Override
public boolean isLeaveButtonVisible() {
return this.extension.canLeave();
}
@Override
public boolean isInstalledExtension() {
return false;
}
@Override
public void doubleclick() {
this.extension.onClick();
}
@Override
public void packetIntercept(HMessage hMessage) {
this.extension.modifyMessage(hMessage);
this.sendManipulatedPacket(hMessage);
}
@Override
public void provideFlags(String[] flags) {
}
@Override
public void connectionStart(String host, int port, String hotelVersion, String clientIdentifier, HClient clientType, PacketInfoManager packetInfoManager) {
this.extension.setPacketInfoManager(packetInfoManager);
this.extension.getOnConnectionObservable().fireEvent(l -> l.onConnection(host, port, hotelVersion, clientIdentifier, clientType));
this.extension.onStartConnection();
}
@Override
public void connectionEnd() {
this.extension.onEndConnection();
}
@Override
public void init(boolean isConnected, HostInfo hostInfo) {
this.extension.initExtension();
this.extension.updateHostInfo(hostInfo);
}
@Override
public void close() {
}
@Override
public void updateHostInfo(HostInfo hostInfo) {
this.extension.updateHostInfo(hostInfo);
}
@Override
public void packetToStringResponse(String string, String expression) {
}
@Override
public void stringToPacketResponse(HPacket packet) {
}
@Override
public ExtensionType extensionType() {
return ExtensionType.INTERNAL;
}
}