[Add] Couple more commodities.

This commit is contained in:
Allanis 2013-04-28 09:23:16 +01:00
parent 6d8a6d37c4
commit 6665424d97
7 changed files with 79 additions and 22 deletions

View File

@ -11,6 +11,24 @@
<high>240</high> <high>240</high>
<medium>210</medium> <medium>210</medium>
<low>180</low> <low>180</low>
</commodity>
<commodity name="Industrial Goods">
<description>Your basic industrial goods. From cutting lasers to prcessed metals.</description>
<high>420</high>
<medium>340</medium>
<low>280</low>
</commodity>
<commodity name="Medicine">
<description>An assortment of medicines sutable for curing all sorts of ailments.</description>
<high>900</high>
<medium>750</medium>
<low>550</low>
</commodity>
<commodity name="Luxury Goods">
<description>All kinds of high quality luxary goods.</description>
<high>760</high>
<medium>630</medium>
<low>470</low>
</commodity> </commodity>
<commodity name = "Parcels"> <commodity name = "Parcels">
</commodity> </commodity>

View File

@ -43,10 +43,19 @@ function create()
-- More mission specifics. -- More mission specifics.
carg_mass = rnd.int(10, 30) carg_mass = rnd.int(10, 30)
i = rnd.int(1) i = rnd.int(12)
if i == 0 then carg_type = "Food" if i < 5 then
elseif i == 1 then carg_type = "Ore" carg_type = "Food"
elseif i < 8 then
carg_type = "Ore"
elseif i < 10 then
carg_type = "Industrial Goods"
elseif i < 12 then
carg_type = "Luxary Goods"
else
carg_type = "Medicine"
end end
misn.setDesc(string.format(misn_desc, planet, system, carg_mass, carg_type)) misn.setDesc(string.format(misn_desc, planet, system, carg_mass, carg_type))
reward = misn_dist * carg_mass * (250+rnd.int(150)) + reward = misn_dist * carg_mass * (250+rnd.int(150)) +
carg_mass * (150+rnd.int(75)) + carg_mass * (150+rnd.int(75)) +

View File

@ -42,9 +42,17 @@ function create()
-- More mission specifics. -- More mission specifics.
carg_mass = rnd.int(10, 30) carg_mass = rnd.int(10, 30)
i = rnd.int(1) i = rnd.int(12)
if i == 0 then carg_type = "Food" if i < 5 then
elseif i == 1 then carg_type = "Ore" carg_type = "Food"
elseif i < 8 then
carg_type = "Ore"
elseif i < 10 then
carg_type = "Industrial Goods"
elseif i < 12 then
carg_type = "Luxary Goods"
else
carg_type = "Medicine"
end end
misn.setDesc(string.format(misn_desc, carg_mass, carg_type, planet, system)) misn.setDesc(string.format(misn_desc, carg_mass, carg_type, planet, system))

View File

@ -17,6 +17,8 @@
<commodities> <commodities>
<commodity>Food</commodity> <commodity>Food</commodity>
<commodity>Ore</commodity> <commodity>Ore</commodity>
<commodity>Industrial Goods</commodity>
<commodity>Medicine</commodity>
</commodities> </commodities>
</general> </general>
<GFX> <GFX>
@ -64,6 +66,7 @@
</tech> </tech>
<commodities> <commodities>
<commodity>Food</commodity> <commodity>Food</commodity>
<commodity>Medicine</commodity>
</commodities> </commodities>
</general> </general>
<GFX> <GFX>
@ -103,6 +106,9 @@
<commodities> <commodities>
<commodity>Food</commodity> <commodity>Food</commodity>
<commodity>Ore</commodity> <commodity>Ore</commodity>
<commodity>Industrial Goods</commodity>
<commodity>Medicine</commodity>
<commodity>Luxury Goods</commodity>
</commodities> </commodities>
</general> </general>
<GFX> <GFX>

View File

@ -43,11 +43,17 @@ end
function create() function create()
ai.setcredits(ai.rnd(200, ai.shipprice()/100)) ai.setcredits(ai.rnd(200, ai.shipprice()/100))
num = ai.rnd(0,1) num = ai.rnd(12)
if num == 0 then if num < 5 then
cargo = "Food" cargo = "Food"
elseif num == 1 then elseif num < 8 then
cargo = "Ore" cargo = "Ore"
elseif num < 10 then
cargo = "Industrial Goods"
elseif num < 12 then
cargo = "Luxary Goods"
else
cargo = "Medicine"
end end
ai.setcargo(cargo, ai.rnd(0, ai.cargofree())) ai.setcargo(cargo, ai.rnd(0, ai.cargofree()))
end end

View File

@ -952,14 +952,24 @@ static int ai_shipprice(lua_State* L) {
// Return a number between low and high. // Return a number between low and high.
static int ai_rng(lua_State* L) { static int ai_rng(lua_State* L) {
MIN_ARGS(2); int o;
int l, h; o = lua_gettop(L);
if(lua_isnumber(L,1)) l = (int)lua_tonumber(L, 1); if(o == 0) lua_pushnumber(L, RNGF()); // Random double 0 <= x <= 1.
if(lua_isnumber(L,1)) h = (int)lua_tonumber(L, 2); else if(o == 1) { // Random int o <= x <= param.
if(lua_isnumber(L, -1))
lua_pushnumber(L, RNG(0, (int)lua_tonumber(L, -1)));
else return 0;
}
else if(o >= 2) { // Random int param 1 <= x <= param 2.
if(lua_isnumber(L, -1) && lua_isnumber(L, -2))
lua_pushnumber(L,
RNG((int)lua_tonumber(L, -2), (int)lua_tonumber(L, -1)));
else return 0;
}
else return 0;
lua_pushnumber(L, RNG(l,h)); return 1; // Unless it's returned 0 already it'll always return a param.
return 1;
} }

View File

@ -65,7 +65,7 @@ extern Mission player_missions[MISSION_MAX];
Mission* missions_computer(int* n, int faction, char* planet, char* system); Mission* missions_computer(int* n, int faction, char* planet, char* system);
// Player accepted mission - mission computer. // Player accepted mission - mission computer.
void mission_accept(Mission* mission); void mission_accept(Mission* mission);
void mission_bar(int faction, char* planet, char* system); void missions_bar(int faction, char* planet, char* system);
// Misc. // Misc.
int mission_getID(MissionData* misn); int mission_getID(MissionData* misn);