-
Items beamen
Es gibt bereits ein fertiges Skript zum Waren bergen in der Skript Bibliothek, dieses habe ich lediglich um das Duranium extrahieren erweitert.
Allerdings verfügen einige Schiffe zusätzlich über lose herumliegende Items, im speziellen bei einigen NPC Schiffen. Gibt es eine Möglichkeit diese ebenfalls "automatisch" zu bergen?
Code:
1 //Die* ID* des* Schiffes,* dass* die* Waren bergen* soll,* einfach* in* der* nächsten* Zeile* eintragen.
2
3 Var* myShip* As* CMyShip* =* New* CMyShip(1351021);
4 Var* ship* As* CShip;
5 Var* goods* As* New* CGoodsInfoEnumerator();
6
7 //iterate* all* ships* in* the* SRS
8 For(Each* ship* In* myShip.SRS)
9 {
10 * * //if* the* owner* is* 3* (NobodyNiemand)* then* its* a* wreck
11 * * If(ship.UserID* =* 3)*
12 * * {
13 * * * * goods* =* New* CGoodsInfoEnumerator();* //create* iterator* for* the* goods
14 * * * * WriteLine("Try* to* get* goods* from* "* &* ship.Name* &* "* ("* &* ship.ShipID* &* ")* ...");
15 * * * * While* (goods.Next())* {* //iterate* every* good...
16 * * * * * * If* (ship.StockRoom.Amount(goods.CurrentWarenInfo.GoodsType)* >* 0)* {* //...if* there* are* some* of* this* goods* in* the* wreck...
17 * * * * * * * * myShip.Action.TransferFromShip(ship.ShipID,* ship.StockRoom.Amount(goods.CurrentWarenInfo.GoodsType),* goods.CurrentWarenInfo.GoodsType);* //...beam* the* amout* of* the* goods* to* your* ship
18 * * * * * * }
19 * * * * }
20 * * * *
21 * * * * //* Nachdem* die* Waren* geborgen* wurden,* dass* Duranium* aus* dem* Wrack* extrahieren
22 * * * * If* (ship.Hull* >* 5* and* (myShip.Energy* +* myShip.EmergencyBattery)* >* 0* and* myShip.StockRoom.FreeStorage* >* 0){
23 * * * * * * myShip.Action.ActivateTractorBeam(ship.ShipID);
24 * * * * * * myShip.Action.ExtractFromWreck((ship.Hull* -* 5));
25 * * * * * * myShip.Action.DeactivateTractorBeam();
26 * * * * }
27 * * }
28 }
29
-
Re: Items beamen
Nein. Items-Beamen geht nicht per Script. Auch nicht scannen, aktivieren, vernichten usw. Items sind für Scripte ein Schwarzes Loch (mit Ausnahme der Sprungportalitems).
-
Re: Items beamen
Danke dir für die Antwort. Dann muss man die Schiffe eben doch noch einmal händisch durchsuchen.
-
Re: Items beamen
Das Einzige was man machen kann ist anhand des Frachtraums und der Materialsumme herausfinden, ob ein Schiff Items im Lagerraum hat.