mirror of
https://github.com/1dot13/source.git
synced 2026-08-19 14:20:30 +02:00
Drop/pick up backpacks using Shift+B, Ctrl+Shift+F:
- added check for DropPackFlag - added message for soldiers changing backpack status git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@8260 3b4a5df2-a311-0410-b5c6-a8a6f20db521
This commit is contained in:
@@ -7932,39 +7932,80 @@ void HandleTBLocatePrevMerc( void )
|
|||||||
|
|
||||||
void HandleTBDropBackpacks( void )
|
void HandleTBDropBackpacks( void )
|
||||||
{
|
{
|
||||||
if( UsingNewInventorySystem() == true )
|
//if( UsingNewInventorySystem() && gusSelectedSoldier != NOBODY )
|
||||||
|
if( UsingNewInventorySystem() )
|
||||||
{
|
{
|
||||||
|
//SOLDIERTYPE *pSoldier = MercPtrs[ gusSelectedSoldier ];
|
||||||
SOLDIERTYPE *pTeamSoldier;
|
SOLDIERTYPE *pTeamSoldier;
|
||||||
INT8 bLoop;
|
UINT8 ubLoop;
|
||||||
for (bLoop=gTacticalStatus.Team[gbPlayerNum].bFirstID, pTeamSoldier=MercPtrs[bLoop]; bLoop <= gTacticalStatus.Team[gbPlayerNum].bLastID; bLoop++, pTeamSoldier++)
|
|
||||||
|
INT16 sAPCost = APBPConstants[AP_BACK_PACK];
|
||||||
|
INT32 iBPCost = APBPConstants[BP_BACK_PACK];
|
||||||
|
|
||||||
|
for( ubLoop = gTacticalStatus.Team[ gbPlayerNum ].bFirstID; ubLoop <= gTacticalStatus.Team[ gbPlayerNum ].bLastID; ubLoop++ )
|
||||||
{
|
{
|
||||||
//if ( OK_CONTROLLABLE_MERC( pTeamSoldier ) && pTeamSoldier->bAssignment == CurrentSquad( ) && !AM_A_ROBOT( pTeamSoldier ) && pTeamSoldier->inv[BPACKPOCKPOS].exists() == true )
|
pTeamSoldier=MercPtrs[ ubLoop ];
|
||||||
if ( OK_CONTROLLABLE_MERC( pTeamSoldier ) && OK_INTERRUPT_MERC( pTeamSoldier ) && !AM_A_ROBOT( pTeamSoldier ) && pTeamSoldier->inv[BPACKPOCKPOS].exists() == true )
|
|
||||||
{
|
if( OK_CONTROLLABLE_MERC( pTeamSoldier ) &&
|
||||||
ChangeDropPackStatus(pTeamSoldier, TRUE);
|
OK_INTERRUPT_MERC( pTeamSoldier ) &&
|
||||||
|
!AM_A_ROBOT( pTeamSoldier ) &&
|
||||||
|
EnoughPoints(pTeamSoldier, sAPCost, iBPCost, FALSE) &&
|
||||||
|
//pTeamSoldier->bAssignment == pSoldier->bAssignment &&
|
||||||
|
pTeamSoldier->bAssignment < ON_DUTY &&
|
||||||
|
pTeamSoldier->inv[BPACKPOCKPOS].exists() &&
|
||||||
|
!pTeamSoldier->flags.DropPackFlag )
|
||||||
|
{
|
||||||
|
if( ChangeDropPackStatus(pTeamSoldier, TRUE) )
|
||||||
|
{
|
||||||
|
ScreenMsg(FONT_MCOLOR_LTYELLOW, MSG_INTERFACE, NewInvMessage[NIV_SOLDIER_DROP], pTeamSoldier->GetName());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
fCharacterInfoPanelDirty = TRUE;
|
fCharacterInfoPanelDirty = TRUE;
|
||||||
fInterfacePanelDirty = DIRTYLEVEL2;
|
fInterfacePanelDirty = DIRTYLEVEL2;
|
||||||
ScreenMsg( FONT_MCOLOR_LTYELLOW, MSG_INTERFACE, NewInvMessage[NIV_ALL_DROP] );
|
//ScreenMsg( FONT_MCOLOR_LTYELLOW, MSG_INTERFACE, NewInvMessage[NIV_ALL_DROP] );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void HandleTBPickUpBackpacks( void )
|
void HandleTBPickUpBackpacks( void )
|
||||||
{
|
{
|
||||||
if( UsingNewInventorySystem() == true )
|
//if( UsingNewInventorySystem() && gusSelectedSoldier != NOBODY )
|
||||||
|
if( UsingNewInventorySystem() )
|
||||||
{
|
{
|
||||||
|
//SOLDIERTYPE *pSoldier = MercPtrs[ gusSelectedSoldier ];
|
||||||
SOLDIERTYPE *pTeamSoldier;
|
SOLDIERTYPE *pTeamSoldier;
|
||||||
INT8 bLoop;
|
UINT8 ubLoop;
|
||||||
for (bLoop=gTacticalStatus.Team[gbPlayerNum].bFirstID, pTeamSoldier=MercPtrs[bLoop]; bLoop <= gTacticalStatus.Team[gbPlayerNum].bLastID; bLoop++, pTeamSoldier++)
|
|
||||||
|
INT16 sAPCost = APBPConstants[AP_BACK_PACK];
|
||||||
|
INT32 iBPCost = APBPConstants[BP_BACK_PACK];
|
||||||
|
|
||||||
|
for( ubLoop = gTacticalStatus.Team[gbPlayerNum].bFirstID; ubLoop <= gTacticalStatus.Team[gbPlayerNum].bLastID; ubLoop++ )
|
||||||
{
|
{
|
||||||
if ( OK_CONTROLLABLE_MERC( pTeamSoldier ) && !AM_A_ROBOT( pTeamSoldier ) && pTeamSoldier->inv[BPACKPOCKPOS].exists() == false )
|
pTeamSoldier=MercPtrs[ubLoop];
|
||||||
{
|
|
||||||
ChangeDropPackStatus(pTeamSoldier, FALSE);
|
if( OK_CONTROLLABLE_MERC( pTeamSoldier ) &&
|
||||||
|
OK_INTERRUPT_MERC( pTeamSoldier ) &&
|
||||||
|
!AM_A_ROBOT( pTeamSoldier ) &&
|
||||||
|
EnoughPoints(pTeamSoldier, sAPCost, iBPCost, FALSE) &&
|
||||||
|
//pTeamSoldier->bAssignment == pSoldier->bAssignment &&
|
||||||
|
pTeamSoldier->bAssignment < ON_DUTY &&
|
||||||
|
!pTeamSoldier->inv[BPACKPOCKPOS].exists() &&
|
||||||
|
pTeamSoldier->flags.DropPackFlag )
|
||||||
|
{
|
||||||
|
if( ChangeDropPackStatus(pTeamSoldier, FALSE) )
|
||||||
|
{
|
||||||
|
ScreenMsg(FONT_MCOLOR_LTYELLOW, MSG_INTERFACE, NewInvMessage[NIV_SOLDIER_PICKUP], pTeamSoldier->GetName());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
ScreenMsg( FONT_MCOLOR_LTYELLOW, MSG_INTERFACE, NewInvMessage[NIV_ALL_PICKUP] );
|
|
||||||
|
fCharacterInfoPanelDirty = TRUE;
|
||||||
|
fInterfacePanelDirty = DIRTYLEVEL2;
|
||||||
|
//ScreenMsg( FONT_MCOLOR_LTYELLOW, MSG_INTERFACE, NewInvMessage[NIV_ALL_PICKUP] );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void HandleTBSoldierRun( void )
|
void HandleTBSoldierRun( void )
|
||||||
{
|
{
|
||||||
SOLDIERTYPE *pSoldier = MercPtrs[ gusSelectedSoldier ];
|
SOLDIERTYPE *pSoldier = MercPtrs[ gusSelectedSoldier ];
|
||||||
|
|||||||
@@ -2542,6 +2542,8 @@ enum
|
|||||||
NIV_NO_CLIMB,
|
NIV_NO_CLIMB,
|
||||||
NIV_ALL_DROP,
|
NIV_ALL_DROP,
|
||||||
NIV_ALL_PICKUP,
|
NIV_ALL_PICKUP,
|
||||||
|
NIV_SOLDIER_DROP,
|
||||||
|
NIV_SOLDIER_PICKUP,
|
||||||
TEXT_NUM_NIV,
|
TEXT_NUM_NIV,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -7528,6 +7528,8 @@ STR16 NewInvMessage[] =
|
|||||||
L"装备大背包后无法爬上房顶",
|
L"装备大背包后无法爬上房顶",
|
||||||
L"所有人的背包已放下",
|
L"所有人的背包已放下",
|
||||||
L"所有人已背起所属的背包",
|
L"所有人已背起所属的背包",
|
||||||
|
L"%s drops backpack",
|
||||||
|
L"%s picks up backpack",
|
||||||
};
|
};
|
||||||
|
|
||||||
// WANNE - MP: Multiplayer messages
|
// WANNE - MP: Multiplayer messages
|
||||||
|
|||||||
@@ -7536,6 +7536,8 @@ STR16 NewInvMessage[] =
|
|||||||
L"Kan beklimmen niet terwijl het dragen van een rugzak",
|
L"Kan beklimmen niet terwijl het dragen van een rugzak",
|
||||||
L"All backpacks dropped", // TODO.Translate
|
L"All backpacks dropped", // TODO.Translate
|
||||||
L"All owned backpacks picked up",
|
L"All owned backpacks picked up",
|
||||||
|
L"%s drops backpack",
|
||||||
|
L"%s picks up backpack",
|
||||||
};
|
};
|
||||||
|
|
||||||
// WANNE - MP: Multiplayer messages
|
// WANNE - MP: Multiplayer messages
|
||||||
|
|||||||
@@ -7524,6 +7524,8 @@ STR16 NewInvMessage[] =
|
|||||||
L"Cannot climb while wearing a backpack",
|
L"Cannot climb while wearing a backpack",
|
||||||
L"All backpacks dropped",
|
L"All backpacks dropped",
|
||||||
L"All owned backpacks picked up",
|
L"All owned backpacks picked up",
|
||||||
|
L"%s drops backpack",
|
||||||
|
L"%s picks up backpack",
|
||||||
};
|
};
|
||||||
|
|
||||||
// WANNE - MP: Multiplayer messages
|
// WANNE - MP: Multiplayer messages
|
||||||
|
|||||||
@@ -7530,6 +7530,8 @@ STR16 NewInvMessage[] =
|
|||||||
L"Ne peut pas escalader avec un sac à dos",
|
L"Ne peut pas escalader avec un sac à dos",
|
||||||
L"Tous les sacs à dos sont posés à terre",
|
L"Tous les sacs à dos sont posés à terre",
|
||||||
L"Tous les sacs à dos sont ramassés",
|
L"Tous les sacs à dos sont ramassés",
|
||||||
|
L"%s drops backpack",
|
||||||
|
L"%s picks up backpack",
|
||||||
};
|
};
|
||||||
|
|
||||||
// WANNE - MP: Multiplayer messages
|
// WANNE - MP: Multiplayer messages
|
||||||
|
|||||||
@@ -7356,6 +7356,8 @@ STR16 NewInvMessage[] =
|
|||||||
L"Kann nicht beim Tragen eines Rucksacks klettern",
|
L"Kann nicht beim Tragen eines Rucksacks klettern",
|
||||||
L"All backpacks dropped", // TODO.Translate
|
L"All backpacks dropped", // TODO.Translate
|
||||||
L"All owned backpacks picked up",
|
L"All owned backpacks picked up",
|
||||||
|
L"%s drops backpack",
|
||||||
|
L"%s picks up backpack",
|
||||||
};
|
};
|
||||||
|
|
||||||
// WANNE - MP: Multiplayer messages
|
// WANNE - MP: Multiplayer messages
|
||||||
|
|||||||
@@ -7527,6 +7527,8 @@ STR16 NewInvMessage[] =
|
|||||||
L"Non può arrampicarsi mentre portano uno zaino",
|
L"Non può arrampicarsi mentre portano uno zaino",
|
||||||
L"All backpacks dropped", // TODO.Translate
|
L"All backpacks dropped", // TODO.Translate
|
||||||
L"All owned backpacks picked up",
|
L"All owned backpacks picked up",
|
||||||
|
L"%s drops backpack",
|
||||||
|
L"%s picks up backpack",
|
||||||
};
|
};
|
||||||
|
|
||||||
// WANNE - MP: Multiplayer messages
|
// WANNE - MP: Multiplayer messages
|
||||||
|
|||||||
@@ -7536,6 +7536,8 @@ STR16 NewInvMessage[] =
|
|||||||
L"Nie można wspinać się z plecakiem",
|
L"Nie można wspinać się z plecakiem",
|
||||||
L"All backpacks dropped", // TODO.Translate
|
L"All backpacks dropped", // TODO.Translate
|
||||||
L"All owned backpacks picked up",
|
L"All owned backpacks picked up",
|
||||||
|
L"%s drops backpack",
|
||||||
|
L"%s picks up backpack",
|
||||||
};
|
};
|
||||||
|
|
||||||
// WANNE - MP: Multiplayer messages
|
// WANNE - MP: Multiplayer messages
|
||||||
|
|||||||
@@ -7524,6 +7524,8 @@ STR16 NewInvMessage[] =
|
|||||||
L"Тяжеловато будет взбираться с полным рюкзаком на крышу. Может, снимем?",
|
L"Тяжеловато будет взбираться с полным рюкзаком на крышу. Может, снимем?",
|
||||||
L"Все рюкзаки сброшены",
|
L"Все рюкзаки сброшены",
|
||||||
L"Все рюкзаки подняты",
|
L"Все рюкзаки подняты",
|
||||||
|
L"%s drops backpack",
|
||||||
|
L"%s picks up backpack",
|
||||||
};
|
};
|
||||||
|
|
||||||
// WANNE - MP: Multiplayer messages
|
// WANNE - MP: Multiplayer messages
|
||||||
|
|||||||
Reference in New Issue
Block a user