From 70454b8d64ee2469859c9153b74f4d26b47c898c Mon Sep 17 00:00:00 2001 From: rubidium Date: Sat, 6 Apr 2013 11:59:27 +0000 Subject: (svn r25148) -Fix [FS#5517]: [Script] XXBase::Chance function did not work for large values (>65535) --- src/script/api/script_base.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/script/api/script_base.cpp') diff --git a/src/script/api/script_base.cpp b/src/script/api/script_base.cpp index 2472fe1c7..7fd5b2df9 100644 --- a/src/script/api/script_base.cpp +++ b/src/script/api/script_base.cpp @@ -44,7 +44,7 @@ /* static */ bool ScriptBase::Chance(uint out, uint max) { EnforcePrecondition(false, out <= max); - return (uint16)Rand() <= (uint16)((65535 * out) / max); + return ScriptBase::RandRange(max) < out; } /* static */ bool ScriptBase::ChanceItem(int unused_param, uint out, uint max) -- cgit v1.2.3-54-g00ecf