[[http://www.siedler-games.de|{{:sg-link.jpg|}}]] ====== Entities aus der Map holen ====== {{http://www.siedler-portal.de/vb3/member.php?u=1762|Old McDonald}} hat uns ja das wunderbare Programm **EntityOut.Exe** geschrieben, mit dem man alle Entities aus der Map auslesen kann. \\ Nun habe ich flott dazu ein Programm geschrieben, mit dem man aus diesen Angaben einen Bereich (Rechteck) auswählen kann. \\ Die in diesem Rechteck vorhandenen Entities werden dann in eine Funktion geschrieben, die die IDs der Entities zurück gibt. \\ {{utilfunctions:holeentities.jpg}} Bedienung ist einfach. * Map Laden ( ist direkt im extra2\shr\user\maps Verzeichnis ) * Daten des gewünschten Rechtecks eingeben. * Button unten drücken. Dann ist die Funktion in Form von: function HoleEntities() local entitiesImRechteck = {}; local AddEntity = function( _x, _y) table.insert(entitiesImRechteck, assert(Logic.GetEntityAtPosition(_x , _y),"Entity ist nicht mehr da")); end AddEntity(3004.98, 3286.27); AddEntity(3220.22, 3284.31); AddEntity(2464.06, 3500); AddEntity(2788.76, 3277.68); AddEntity(2464, 3100.641); AddEntity(2576.8, 3273.62); AddEntity(3436.22, 3289.79); AddEntity(3858.5, 3299.14); AddEntity(3870, 4030); AddEntity(2910.1, 4026.609); AddEntity(3770, 2570); AddEntity(2810.1, 2573.39); AddEntity(3230, 4030); AddEntity(3530, 4030); AddEntity(2613.35, 4030); AddEntity(2513.35, 2570); AddEntity(3130, 2570); AddEntity(3430, 2570); AddEntity(3770, 2116.12); AddEntity(2494.58, 2116.12); AddEntity(3111.22, 2116.12); AddEntity(3470, 2119.86); AddEntity(2821.96, 2098.42); AddEntity(3956.859, 3503.109); AddEntity(3952.289, 3098.75); AddEntity(3653.74, 3300.32); AddEntity(2420, 2017.21); AddEntity(2714.01, 2000.55); AddEntity(3080, 2000.1); AddEntity(3420, 2020); AddEntity(3789.359, 2016.26); AddEntity(1940, 2342.86); AddEntity(2622.33, 3844.699); AddEntity(3684.09, 3854.16); AddEntity(3307.051, 3891.869); AddEntity(2754.94, 2531.62); AddEntity(3626.051, 2435.76); AddEntity(2344.15, 2070.92); AddEntity(2180, 3980); AddEntity(2133.88, 3880); AddEntity(3374.09, 2218.04); AddEntity(3411.66, 1956.1); AddEntity(1906.54, 3796.18); AddEntity(2615.39, 3970.32); AddEntity(3674.689, 2597.1); AddEntity(3087.66, 1997.35); AddEntity(3685.189, 1966.87); AddEntity(2488.71, 2127.63); AddEntity(2062.36, 2620.8); AddEntity(2020.99, 2138.13); AddEntity(2066.05, 1721.66); AddEntity(2452.47, 1582.25); AddEntity(2923.28, 1597.59); AddEntity(2102.28, 1942.14); AddEntity(2117.58, 2439.06); AddEntity(3672.891, 1607.73); AddEntity(3813.119, 1691.97); AddEntity(3237.27, 1748.14); AddEntity(2399.97, 1723.57); AddEntity(2689.07, 1583.38); AddEntity(3177.47, 1590.85); AddEntity(2598.06, 2450.53); AddEntity(2897.83, 1777.96); AddEntity(3396.971, 1626.99); AddEntity(4065.41, 1808.75); AddEntity(4123.01, 2361.53); AddEntity(4186.26, 2147.08); AddEntity(3551.801, 1635.2); AddEntity(3978.051, 1672.52); AddEntity(2055.64, 1971.3); AddEntity(2278.73, 1698.35); AddEntity(4069.99, 3295.77); AddEntity(2372.29, 3276.53); AddEntity(4142.359, 2602.89); AddEntity(4043.779, 1945.14); AddEntity(2226.58, 2160.93); AddEntity(3164.56, 4141.471); AddEntity(2414.76, 4016.34); AddEntity(4022.67, 3935.539); AddEntity(3346.811, 3958.4); AddEntity(2962.4, 4065.17); AddEntity(2425.01, 4144.9); AddEntity(2354, 2755.45); AddEntity(2538.2, 2476.6); AddEntity(2885.1, 2493.39); AddEntity(3512.83, 2653.49); AddEntity(3950.891, 2469.72); AddEntity(2982.2, 2721.17); AddEntity(3793.9, 2230.2); AddEntity(3698.24, 1942.15); AddEntity(3252.38, 2049.96); AddEntity(2835.38, 1987.44); AddEntity(2982.67, 2195.5); AddEntity(2366.01, 1873.63); AddEntity(2570.27, 2125.81); AddEntity(2415.59, 2146.27); AddEntity(2783.5, 4100.711); AddEntity(3086.92, 3986.27); AddEntity(3709.4, 4037.561); AddEntity(2784.08, 4029.551); AddEntity(3099.55, 2518.21); AddEntity(2694.96, 2661.24); AddEntity(2334.3, 2519.62); AddEntity(3917.789, 2729.11); AddEntity(3515.891, 2210.02); AddEntity(3373.98, 2054.85); AddEntity(2936.25, 2012.01); AddEntity(2809.24, 2090.62); AddEntity(2471.52, 2048.95); AddEntity(3230.24, 2591.63); AddEntity(3406.27, 2476.02); AddEntity(3307.93, 2521.88); AddEntity(2467.33, 4146.039); AddEntity(3615.211, 2489.38); AddEntity(3079.82, 2174.18); AddEntity(2295.5, 3535.15); AddEntity(2295, 3056.01); AddEntity(3220.2, 3284.301); AddEntity(1286.84, 3488.641); AddEntity(1575.01, 3189.81); return entitiesImRechteck; end in der Zwischenablage. ==> Rechte Maustaste ins Script und einfügen. Einfache Anwendung: myEntities = HoleEntities() for i = 1, table.getn(myEntities ) do DestroyEntity(myEntities [i]) end Und alles ist futsch. Wie gesagt braucht man die {{:utilfunctions:entityout.rar|EntityOut.Exe}} {{:utilfunctions:holeentities2.rar|Und das kleine bisschen hier.}}