/* /lib/props/mass.c
* From the Dead Souls Object Library
* Handles object massiveness and weight
* Created by Descartes of Borg 970101
* Version: @(#) mass.c 1.1@(#)
* Last modified: 97/01/01
*/
#include <config.h>
int Mass = 0;
int AddMass(int x){
if( Mass + x > 0 ){
x = -Mass;
}
if( environment() ){
environment()->AddCarriedMass(x);
}
return (Mass -= x);
}
int GetMass(){
int load = this_object()->GetCarriedMass();
return (Mass + load);
}
int SetMass(int x){
if( x < 0 ){
x = 0;
}
return (Mass = x);
}
string array GetSave(){
return ({ "Mass" });
}
int GetWeight(){
float h;
if( environment() ){
h = environment()->GetGravity();
}
else {
h = DEFAULT_GRAVITY;
}
return to_int(GetMass() * h);
}