From 83d3fbf07c67e325d285e087dd3c88c227d5dafc Mon Sep 17 00:00:00 2001 From: Allanis Date: Sat, 6 Apr 2013 15:04:20 +0100 Subject: [PATCH] [Fix] Bug in ze missionz --- dat/missions/cargo.lua | 13 ++++++++----- src/misn_lua.c | 2 +- src/rng.h | 2 +- 3 files changed, 10 insertions(+), 7 deletions(-) diff --git a/dat/missions/cargo.lua b/dat/missions/cargo.lua index 8dbc9dd..a2d6bb0 100644 --- a/dat/missions/cargo.lua +++ b/dat/missions/cargo.lua @@ -13,7 +13,7 @@ function create() -- Missions generic. misn_type = "Cargo" - i = rnd.int(0, 3) + i = rnd.int(3) if i == 0 then misn.setTitle("Cargo Delivery to " .. planet) elseif i == 1 then @@ -26,11 +26,14 @@ function create() -- More mission specifics. carg_mass = rnd.int(10, 30) - carg_type = "Food" + i = rnd.int(1) + if i == 0 then carg_type = "Food" + elseif i == 1 then carg_type = "Ore" + end misn.setDesc(string.format( - "%s needs a rush delivery of %d tons of %s by %s.", - planet, carg_mass, carg_type, "SOMEDAY")) - misn_reward = carg_mass * 1000 + rnd.int(0, 5000) + "%s needs a delivery of %d tons of %s.", + planet, carg_mass, carg_type)) + misn_reward = carg_mass * (750 + rnd.int(250)) + rnd.int(5000) misn.setReward(string.format("%d Scred", misn_reward)) end diff --git a/src/misn_lua.c b/src/misn_lua.c index e301060..87825dd 100644 --- a/src/misn_lua.c +++ b/src/misn_lua.c @@ -248,7 +248,7 @@ static int space_getPlanet(lua_State* L) { free(planets); return 0;; } - rndplanet = planets[RNG(0, nplanets)]; + rndplanet = planets[RNG(0, nplanets-1)]; free(planets); lua_pushstring(L, rndplanet); diff --git a/src/rng.h b/src/rng.h index eea770a..6e5089a 100644 --- a/src/rng.h +++ b/src/rng.h @@ -1,6 +1,6 @@ #pragma once -#define RNG(L,H) ((int)L + (int)((double)(H-L) * randfp())) // L <= RNG <= H +#define RNG(L,H) ((int)L + (int)((double)(H-L+1) * randfp())) // L <= RNG <= H #define RNGF() (randfp()) void rng_init(void);