Nice one. A post-eruption one certainly
Now all you need to do is a pre-eruption one, and the borders for them both
Now all you need to do is a pre-eruption one, and the borders for them both
Now all you need to do is a pre-eruption one, and the borders for them both

//=====================================
//
// Volcanic Eruptions
//
Location_t VOLC_LOC[];
HandleEvent(BeginTurn) 'IWN_place_volcano' pre{
int_t i;//10
int_t j;
location_t tmpLoc;
int_t volc;
unit_t BarbUnit;
int_t num_volcs;
num_volcs = 3; // this is the number of volcanoes that will appear.
volc = 0;
while(volc <= num_volcs){//20
i = random(GetMapWidth() -1);
j = random(GetMapHeight() -1);
MakeLocation(tmpLoc, i, j);
if(TerrainType(tmpLoc) == terrainDB(TERRAIN_MOUNTAIN)){
volc = volc + 1;
VOLC_LOC[volc] = tmpLoc;
Terraform(VOLC_LOC[volc], 10);
}
}
//30
DisableTrigger('IWN_place_volcano');
}
HandleEvent(BeginTurn) 'IWN_volcano_erupts' pre {
int_t rnd;
location_t tmpLoc;
location_t tmploc2;
unit_t BarbUnit;
int_t tmpnum;
int_t i;
rnd = random(500);
if(rnd == 1){
tmpLoc = VOLC_LOC[rnd];
Terraform(tmploc, 40);
for(i = -1; i < 7; i = i + 1) {
tmpnum = i ;
GetNeighbor(tmploc, tmpnum, tmploc2);//40 //nabors are also turned to dead
Terraform(tmploc2, 17);
}
}
HandleEvent(BeginTurn) 'FIRESTORM' post {
int_t xcoord;
int_t ycoord;
location_t tmpLocb;
int_t i;
int_t b;
for(i = -1; i < 700; i = i + 1) {//done in 12 with 800
xcoord = Random(GetMapWidth());
ycoord = Random(GetMapHeight());
MakeLocation(tmpLocb, xcoord, ycoord); //50
if (TerrainType(tmpLocb) == 7) {
AddEffect(tmplocb, "SPECEFFECT_FIRES", "SOUND_ID_NANO_TERROR");
Terraform(tmplocb, 4); // Transform jungle
} else {
if (TerrainType(tmpLocb) == 1) {
AddEffect(tmplocb, "SPECEFFECT_FIRES", "SOUND_ID_NANO_TERROR");
Terraform(tmplocb, 4); // Transform to plain
} else {
if (TerrainType(tmpLocb) == 2) {
AddEffect(tmplocb, "SPECEFFECT_FIRES", "SOUND_ID_NANO_TERROR");
Terraform(tmplocb, 2); // Transform tundra
} else {
if (TerrainType(tmpLocb) == 3) {
AddEffect(tmplocb, "SPECEFFECT_FIRES", "SOUND_ID_NANO_TERROR");
Terraform(tmplocb, 3); // Transform snow
} else {
if (TerrainType(tmpLocb) == 4) {
AddEffect(tmplocb, "SPECEFFECT_FIRES", "SOUND_ID_NANO_TERROR");
Terraform(tmplocb, 3); // Transform grass
} else {
if (TerrainType(tmpLocb) == 5) {
AddEffect(tmplocb, "SPECEFFECT_FIRES", "SOUND_ID_NANO_TERROR");
Terraform(tmplocb, 4); // Transform desert
} else {
if (TerrainType(tmpLocb) == 6) {
AddEffect(tmplocb, "SPECEFFECT_FIRES", "SOUND_ID_NANO_TERROR");
Terraform(tmplocb, 4); // Transform swamp
} else {
if (TerrainType(tmpLocb) == 8) {
AddEffect(tmplocb, "SPECEFFECT_FIRES", "SOUND_ID_NANO_TERROR");
Terraform(tmplocb, 21); // Transform green mountin
} else {
if (TerrainType(tmpLocb) == 9) {
AddEffect(tmplocb, "SPECEFFECT_FIRES", "SOUND_ID_NANO_TERROR");
Terraform(tmplocb, 8); // Transform green hill
} else {
if (TerrainType(tmpLocb) == 18) {
AddEffect(tmplocb, "SPECEFFECT_FIRES", "SOUND_ID_NANO_TERROR");
Terraform(tmplocb, 20); // Transform sand dune
} else {
if (TerrainType(tmpLocb) == 19) {
AddEffect(tmplocb, "SPECEFFECT_FIRES", "SOUND_ID_NANO_TERROR");
Terraform(tmplocb, 9); // Transform sand montin
} else {
if (TerrainType(tmpLocb) == 20) {
AddEffect(tmplocb, "SPECEFFECT_FIRES", "SOUND_ID_NANO_TERROR");
Terraform(tmplocb, 8); // Transform poler hill
} else {
if (TerrainType(tmpLocb) == 21) {
AddEffect(tmplocb, "SPECEFFECT_FIRES", "SOUND_ID_NANO_TERROR");
Terraform(tmplocb, 21); // Transform poler monitn
} else {
if (TerrainType(tmpLocb) == 0) {
AddEffect(tmplocb, "SPECEFFECT_FIRES", "SOUND_ID_NANO_TERROR");
Terraform(tmplocb, 4); // Transform poler hill
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
int_t disableIceAgeRound;
HandleEvent(BeginTurn) 'ChanceOfEnablingIceAge' post {
if(Random(10) == 0) {
EnableTrigger('FIRESTORM');
disableIceAgeRound = GetCurrentRound() + 100;
}
}
HandleEvent(BeginTurn) 'DisableIceAge' post {
if(GetCurrentRound() == disableIceAgeRound) {
DisableTrigger('FIRESTORM');
}
}
Comment