Показать сообщение отдельно
Непрочитано 29.10.2013, 15:50   #32
Супергерой

Автор темы (Топик Стартер) Re: Замена статикмешей на карте

Для тех, кто хочет побаловаться с копированием квадратов.

Подвинуть все статикмеши на карте(необходимо подключить L2smr.jar):
PHP код:
import l2smr.L2UnrealPackageFile;
import java.io.IOException;
import static l2smr.StaticMeshActorUtil.*;

public class 
MoveStaticMesh {
    public static 
void main(String[] argsthrows Exception {
        if (
args.length != 3){
            
System.out.println("USAGE: MoveStaticMesh unr dx dy");
            
System.exit(1);
        }

        
float dx Float.parseFloat(args[1]);
        
float dy Float.parseFloat(args[2]);

        try (
L2UnrealPackageFile map = new L2UnrealPackageFile(args[0], false)) {
            for (
L2UnrealPackageFile.ExportEntry entry map.getExportTable()) {
                if (!
entry.getObjectClass().getObjectName().getName().equals("StaticMeshActor"))
                    continue;

                
System.out.print(entry);

                
byte[] rawData entry.getObjectRawData();
                
Offsets offsets getOffsets(rawDatamap);
                
float[] location getLocation(rawDataoffsets);

                
System.out.print(" ["+location[0]+","+location[1]+"]");

                
location[0] += dx;
                
location[1] += dy;

                
System.out.print("->["+location[0]+","+location[1]+"]");

                
setLocation(rawDataoffsetslocation[0], location[1], location[2]);
                
entry.setObjectRawData(rawData);

                
System.out.println();
            }
        } catch (
IOException e) {
            
e.printStackTrace();
        }
    }

__________________
l2clientmod / l2io
acmi вне форума Отправить сообщение для acmi с помощью ICQ Ответить с цитированием
Сказали спасибо: