Hier hab ich noch ne Frage,
ich habe nach dem Tut hier im Forum die Batterie eingefügt und so weiter. Ich habe das ganze nun auch in meiner Statusleiste eingefügt. Was ich noch nicht verstehe, Startwert habe ich bei 75% eingestellt. Das zeigt der Akku auch an beim spawnen. wund wird dann auf 70% reduziert. Aber dann kommt keine weitere Ladestandsänderung. Habe ich da was vergessen oder falsch gemacht?
Die Batterie ist in Zeile 48 - 62 und Zeile 93 bis 94 eingefügt.
Bash: fn_survival.sqf
#include <macro.h>
/*
Author: Bryan "Tonic" Boardwine
Description:
All survival? things merged into one thread.
*/
private["_fnc_food","_fnc_water","_foodTime","_waterTime","_bp","_walkDis","_lastPos","_curPos","_fnc_battery"];
_fnc_food = {
if(life_hunger < 2) then {player setDamage 1; hint localize "STR_NOTF_EatMSG_Death";}
else
{
SUB(life_hunger,10);
//[] call life_fnc_hudUpdate;
if(life_hunger < 2) then {player setDamage 1; hint localize "STR_NOTF_EatMSG_Death";};
switch(life_hunger) do {
case 30: {hint localize "STR_NOTF_EatMSG_1";};
case 20: {hint localize "STR_NOTF_EatMSG_2";};
case 10: {
hint localize "STR_NOTF_EatMSG_3";
if(EQUAL(LIFE_SETTINGS(getNumber,"enable_fatigue"),1)) then {player setFatigue 1;};
};
};
};
};
_fnc_water = {
if(life_thirst < 2) then {player setDamage 1; hint localize "STR_NOTF_DrinkMSG_Death";}
else
{
SUB(life_thirst,10);
//[] call life_fnc_hudUpdate;
if(life_thirst < 2) then {player setDamage 1; hint localize "STR_NOTF_DrinkMSG_Death";};
switch(life_thirst) do {
case 30: {hint localize "STR_NOTF_DrinkMSG_1";};
case 20: {
hint localize "STR_NOTF_DrinkMSG_2";
if(EQUAL(LIFE_SETTINGS(getNumber,"enable_fatigue"),1)) then {player setFatigue 1;};
};
case 10: {
hint localize "STR_NOTF_DrinkMSG_3";
if(EQUAL(LIFE_SETTINGS(getNumber,"enable_fatigue"),1)) then {player setFatigue 1;};
};
};
};
};
_fnc_battery = {
if(life_battery < 2) then {hint "Dein Handy Akku ist leer.";}
else
{
SUB(life_battery,5); // = life_battery - 5;
//[] call life_fnc_hudUpdate;
if(life_battery < 2) then {hint "Dein Handy Akku ist leer.";};
switch(life_battery) do
{
case 30: {hint "Dein Handy Akku Stand ist bei 30%. ";};
case 20: {hint "Dein Handy Akku Stand ist bei 20%. ";};
case 10: {hint "Dein Handy Akku Stand ist bei 10%. ";};
};
};
};
[] spawn
{
while {true} do
{
waitUntil {(life_drink > 0)};
while{(life_drink > 0)} do {
if(life_drink > 0.08) then {
"radialBlur" ppEffectEnable true;
"radialBlur" ppEffectAdjust[0.08, 0,0.35,0.37];
"radialblur" ppEffectCommit 3;
sleep 240;
life_drink = life_drink - 0.02;
} else {
"radialBlur" ppEffectEnable true;
"radialBlur" ppEffectAdjust[0.05, 0,0.36,0.38];
"radialBlur" ppEffectCommit 1;
sleep 180;
life_drink = life_drink - 0.02;
};
};
"radialBlur" ppEffectAdjust [0,0,0,0];
"radialblur" ppEffectCommit 5;
"radialblur" ppEffectEnable false;
life_drink = 0;
};
};
sleep 10;
[] call _fnc_battery;
//Setup the time-based variables.
_foodTime = time;
_waterTime = time;
_walkDis = 0;
_bp = "";
_lastPos = visiblePosition player;
_lastPos = (SEL(_lastPos,0)) + (SEL(_lastPos,1));
_lastState = vehicle player;
while {true} do {
/* Thirst / Hunger adjustment that is time based */
if((time - _waterTime) > 600) then {[] call _fnc_water; _waterTime = time;};
if((time - _foodTime) > 850) then {[] call _fnc_food; _foodTime = time;};
/* Adjustment of carrying capacity based on backpack changes */
if(EQUAL(backpack player,"")) then {
life_maxWeight = life_maxWeightT;
_bp = backpack player;
} else {
if(!(EQUAL(backpack player,"")) && {!(EQUAL(backpack player,_bp))}) then {
_bp = backpack player;
life_maxWeight = life_maxWeightT + (round(FETCH_CONFIG2(getNumber,CONFIG_VEHICLES,_bp,"maximumload") / 4));
};
};
/* Check if the player's state changed? */
if(vehicle player != _lastState OR {!alive player}) then {
[] call life_fnc_updateViewDistance;
_lastState = vehicle player;
};
/* Check if the weight has changed and the player is carrying to much */
if(life_carryWeight > life_maxWeight && {!isForcedWalk player}) then {
player forceWalk true;
if(EQUAL(LIFE_SETTINGS(getNumber,"enable_fatigue"),1)) then {player setFatigue 1;};
hint localize "STR_NOTF_MaxWeight";
} else {
if(isForcedWalk player) then {
player forceWalk false;
};
};
/* Travelling distance to decrease thirst/hunger which is captured every second so the distance is actually greater then 650 */
if(!alive player) then {_walkDis = 0;} else {
_curPos = visiblePosition player;
_curPos = (SEL(_curPos,0)) + (SEL(_curPos,1));
if(!(EQUAL(_curPos,_lastPos)) && {(vehicle player == player)}) then {
ADD(_walkDis,1);
if(EQUAL(_walkDis,650)) then {
_walkDis = 0;
SUB(life_thirst,5);
SUB(life_hunger,5);
//[] call life_fnc_hudUpdate;
};
};
_lastPos = visiblePosition player;
_lastPos = (SEL(_lastPos,0)) + (SEL(_lastPos,1));
};
uiSleep 1;
};
[] spawn
{
while {true} do
{
waitUntil {(life_drug > 0)};
while{(life_drug > 0)} do {
if(life_drug > 0.08) then {
sleep 60;
[] spawn life_fnc_suechtig;
hint "Sie sollten bei einen Notarzt vorbei schauen! Sie sind stark Drogensuechtig!";
sleep 240;
};
};
};
};
[] spawn {
while{true} do
{
waitUntil {(player getVariable "missingOrgan")};
life_max_health = .50;
while{(player getVariable "missingOrgan")} do {
life_thirst = 50;
life_hunger = 50;
if(damage player < (1 - life_max_health)) then {player setDamage (1 - life_max_health);};
"dynamicBlur" ppEffectEnable true;
"dynamicBlur" ppEffectAdjust [2];
"dynamicBlur" ppEffectCommit 1;
sleep 5;
};
"dynamicBlur" ppEffectEnable false;
life_max_health = 1;
};
};
Alles anzeigen
Kann mir da jemand sagen was ich ändern muß? Danke
Saturin78