/***************************************************************/ /* */ /* PBDATA.PKG */ /* */ /* plug-in PhotoPaintBall */ /* data of "owner" instance */ /* */ /* version 5 : Loïc Berthelot, dec 2000 */ /* */ /* nouvelle version 4.5 : Loïc Berthelot nov 2000 */ /* avec l'aide de Olivier Lamotte */ /* */ /* Photo3 Plugin - DMS - march 00 - by Sylvain HUET */ /* */ /***************************************************************/ /***************************************************************/ /* */ /* */ /* DATA STRUCT : */ /* var PBDATA_SPINACHDAMAGE_TIMEOUT : I */ /* struct PBData */ /* typeof pbData : PBData */ /* */ /* */ /* BODY : */ /* data_updateLife : fun [I] I */ /* data_start : fun [] I */ /* */ /* */ /***************************************************************/ /********************************************************************************/ /********************************************************************************/ /** **/ /** D A T A S T R U C T **/ /** **/ /********************************************************************************/ /********************************************************************************/ var PBDATA_SPINACHDAMAGE_TIMEOUT = 20000;; struct PBData = [ /*1 if player alive, 0 if not */ alive_PBDATA : I, /* ID of your gun */ itemIndex_PBDATA : I, /* your score */ score_PBDATA : I, /* your life bar */ life_PBDATA : I, /* 1 if you're speacking, 0 if not */ speaking_PBDATA : I, /* entry position of avatar */ entryPos_PBDATA : [I I I], /* ch photo flag */ chphoto_PBDATA : I /* MODIF */ ] mkPBData;; typeof pbData = PBData;; /********************************************************************************/ /********************************************************************************/ /** **/ /** BODY **/ /** **/ /********************************************************************************/ /********************************************************************************/ /*************************************/ /* data_updateLife [I] I */ /* */ /* you gain or lose life points */ /*************************************/ fun data_updateLife (value) = set pbData.life_PBDATA = pbData.life_PBDATA + value; if (pbData.life_PBDATA > 100) then set pbData.life_PBDATA = 100 else if (pbData.life_PBDATA < 0) then ( set pbData.life_PBDATA = 0; set pbData.alive_PBDATA = 0; /* MODIF */ 0 ) else nil; 1 ;; /**************************************/ /* data_start [] I */ /* */ /* initialize the data struct */ /**************************************/ fun data_start () = set pbData = mkPBData [0 1 0 100 0 nil 0]; 1 ;; /**************************************/ /* data_alive [] I */ /* */ /* set alive field to 1 */ /**************************************/ fun data_alive () = set pbData.alive_PBDATA = 1; 1 ;; /**************************************/ /* data_dead [] I */ /* */ /* set alive field to 0 */ /**************************************/ fun data_dead () = set pbData.alive_PBDATA = 0; 1 ;;