A paramedic can use empty bloodbags (<emptybloodbag>-tag, item #1756) to create blood bags (<bloodbag>-tag, item #1757) from other mercs. These can then boost the health returned by surgery by ONTOP_PERCENT_SURGERY_HEAL_BLOODBAG percent.

Requires GameDir >= r2467.

git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@8662 3b4a5df2-a311-0410-b5c6-a8a6f20db521
This commit is contained in:
Flugente
2019-02-10 16:26:48 +00:00
parent be7005c3f8
commit 84d08a8821
40 changed files with 754 additions and 59 deletions
+4 -4
View File
@@ -5324,7 +5324,7 @@ BOOLEAN OBJECTTYPE::AttachObjectNAS( SOLDIERTYPE * pSoldier, OBJECTTYPE * pAttac
case TRIPWIRE_ROLL:
{
// check if this can work
if ( Item[ this->usItem ].tripwire && Item[pAttachment->usItem].tripwire && Item[ this->usItem ].usItemFlag == TRIPWIREROLL )
if ( Item[ this->usItem ].tripwire && Item[pAttachment->usItem].tripwire && HasItemFlag( this->usItem, TRIPWIREROLL ) )
{
if ( (*this)[subObject]->data.objectStatus < 100 )
(*this)[subObject]->data.objectStatus++;
@@ -5509,7 +5509,7 @@ BOOLEAN OBJECTTYPE::AttachObjectNAS( SOLDIERTYPE * pSoldier, OBJECTTYPE * pAttac
(*this)[subObject]->data.objectStatus = ((*this)[subObject]->data.objectStatus + (*pAttachment)[0]->data.objectStatus) / 2;
// Flugente: if the new item has the TRIPWIREROLL property, it only gets status 2 upon creation via merges
if ( Item[ this->usItem ].usItemFlag == TRIPWIREROLL )
if ( HasItemFlag( this->usItem, TRIPWIREROLL ) )
{
(*this)[subObject]->data.objectStatus = 2;
}
@@ -14927,13 +14927,13 @@ void CheckBombSpecifics( OBJECTTYPE * pObj, INT8* detonatortype, INT8* setting,
}
// Flugente: check for specific flags
BOOLEAN HasItemFlag( UINT16 usItem, UINT32 aFlag )
BOOLEAN HasItemFlag( UINT16 usItem, UINT64 aFlag )
{
return( (Item[usItem].usItemFlag & aFlag) != 0 );
}
// Flugente: get first item number that has this flag. Use with caution, as we search in all items
BOOLEAN GetFirstItemWithFlag( UINT16* pusItem, UINT32 aFlag )
BOOLEAN GetFirstItemWithFlag( UINT16* pusItem, UINT64 aFlag )
{
register UINT16 i;
for ( i = 1; i < gMAXITEMS_READ; ++i )