Warning: ob_start(): function 'compress_handler' not found or invalid function name in /www/htdocs/xfmantis/core.php on line 18
0000622: Gürtel mit beladung ins Lager - Mantis
Mantis - X-Force
Viewing Issue Advanced Details
622 Einheiten (Soldat, Alien, etc) feature always 13.09.04 15:53 19.11.09 03:00
Unrealer  
Natter  
high  
closed V0.845  
fixed  
none    
none V0.917a01  
0000622: Gürtel mit beladung ins Lager
Wenn man einen vollen Gürtel an einen anderen Soldaten weitergibt oder ins Lager legt, sollten die daran befestigten Gegenstände mit übertragen werden und nicht in den Rucksack "fallen".

Notes
(0004292)
gnfalex   
18.10.09 18:35   
Greetings.
Try to solve.
Algorithm - if belt was sent to base, then before belt nillifing all item from it also sent to base.

diff -w -B -u old\DXSoldatConfig.pas new\DXSoldatConfig.pas
--- old\DXSoldatConfig.pas Thu Aug 20 14:56:56 2009
+++ new\DXSoldatConfig.pas Sat Oct 17 15:59:24 2009
@@ -1337,6 +1338,7 @@
 
   FromItem : TLagerItem;
   ToItem : TLagerItem;
+ Dummy : Integer;
 
   function FindMunForIDinSlot(ID: Cardinal;
     SlotType: TSoldatConfigSlot; var Slot: TItemSlot): boolean;
@@ -1625,7 +1627,17 @@
   case FromSlot.Slot of
     scsBasisItem..scsBodenItem : DeleteFromSlot(FromSlot);
     scsLinkeHand..scsPanzerung,
- scsGuertel : fManager.SetzeAusruestung(FromSlot.Slot,0);
+ scsGuertel :
+ begin
+ if (ToSlot.Slot in [scsBasisItem,scsSchiffItem,scsBodenItem]) then
+ for dummy:= FromSlot.SlotID+1 to high(fItemSlots) do
+ begin
+ if (fItemSlots[dummy].Slot=scsMunition) and (fItemSlots[dummy].ID<>0) then
+ setslot(fItemSlots[dummy],ToSlot)
+ else break; // don't sure. Work as with that, as without it, but I preffer to add
+ end;
+ fManager.SetzeAusruestung(FromSlot.Slot,0);
+ end;
     scsRucksack :
     begin
       fManager.DeleteFromRucksack(FromSlot.Data);


Best regards
(0004293)
Natter   
18.10.09 19:16   
Mit kleiner Änderung (else if (fItemSlots[dummy].ID<>0) then break;) umgesetzt.