1812 {
1813
1814
1815
1816
1817
1818
1820 {
1821
1823 {
1825 float consumed_energy_coef;
1826
1827
1829 {
1831 consumed_energy_coef = 1.0;
1832 }
1833 else
1834 {
1837 consumed_energy_coef = time / 1000;
1838 }
1839
1840 if (consumed_energy_coef > 0)
1841 {
1844 bool has_consumed_enough = true;
1845
1848
1850
1851 if ( has_consumed_enough )
1852 {
1853 if ( !was_powered )
1854 {
1859 }
1860
1861 OnWork( consume_energy );
1862 }
1863 else
1864 {
1865 if ( was_powered )
1866 {
1868 {
1873
1875 {
1877 }
1878 }
1879 }
1880
1882 }
1883 }
1884 else
1885 {
1887 }
1888 }
1890 {
1893
1895 {
1900
1902 {
1904 }
1905 }
1906 }
1907 }
1908 }
float GetEnergyUsage()
Energy manager: Returns the number of energy this device needs to run itself (See its config >> energ...
bool IsWorking()
Energy manager: Returns true if this device is working right now.
void WakeUpWholeBranch(EntityAI original_caller)
bool CheckWetness()
Energy manager: Checks if this device is being stopped from working by its wetness level....
float GetCurrentUpdateTime()
void ClearLastUpdateTime()
void OnWork(float consumed_energy)
void SetPowered(bool state)
void SwitchOff()
Energy manager: Switches OFF the device.
bool ConsumeEnergy(float amount)
Energy manager: Consumes the given amount of energy. If there is not enough of stored energy in this ...
void RememberLastUpdateTime()
bool IsSwitchedOn()
Energy manager: Returns state of the switch. Whenever the device is working or not does not matter....