Open source Star Ruler 2 source code!
This commit is contained in:
@@ -0,0 +1,43 @@
|
||||
#include "include/region_effect_spec.as"
|
||||
|
||||
class _Type : RegionEffectType {
|
||||
_Type() {
|
||||
ident = "GrantVision";
|
||||
implementationClass = "GrantVision";
|
||||
}
|
||||
};
|
||||
|
||||
class GrantVision : RegionEffect {
|
||||
double timer = 0.0;
|
||||
|
||||
GrantVision(Empire@ emp, double timer) {
|
||||
@this.forEmpire = emp;
|
||||
this.timer = timer;
|
||||
@this.type = definition;
|
||||
}
|
||||
|
||||
#section server
|
||||
void save(SaveFile& file) override {
|
||||
file << timer;
|
||||
}
|
||||
|
||||
void load(SaveFile& file) override {
|
||||
file >> timer;
|
||||
}
|
||||
|
||||
bool tick(Region& region, double time) override {
|
||||
timer -= time;
|
||||
if(timer <= 0)
|
||||
return false;
|
||||
return true;
|
||||
}
|
||||
|
||||
void start(Region& region) override {
|
||||
region.grantVision(forEmpire);
|
||||
}
|
||||
|
||||
void end(Region& region) override {
|
||||
region.revokeVision(forEmpire);
|
||||
}
|
||||
#section all
|
||||
};
|
||||
Reference in New Issue
Block a user