From 8408c276cba8e8679a635d13b2a141bd06c32b56 Mon Sep 17 00:00:00 2001 From: Alex Szpakowski Date: Sun, 21 Jul 2013 21:41:23 -0300 Subject: [PATCH] ParticleSystem:setColors(r, g, b) now defaults to 255 alpha instead of erroring (resolves issue #686) --- src/modules/graphics/opengl/wrap_ParticleSystem.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/modules/graphics/opengl/wrap_ParticleSystem.cpp b/src/modules/graphics/opengl/wrap_ParticleSystem.cpp index ff6f8290a..2442f17e3 100644 --- a/src/modules/graphics/opengl/wrap_ParticleSystem.cpp +++ b/src/modules/graphics/opengl/wrap_ParticleSystem.cpp @@ -512,7 +512,7 @@ int w_ParticleSystem_setColors(lua_State *L) int cargs = lua_gettop(L) - 1; size_t nColors = (cargs + 3) / 4; // nColors = ceil(color_args / 4) - if (cargs % 4 != 0 || cargs == 0) + if (cargs != 3 && (cargs % 4 != 0 || cargs == 0)) return luaL_error(L, "Expected red, green, blue, and alpha. Only got %d of 4 components.", cargs % 4); if (nColors > 8) @@ -523,7 +523,7 @@ int w_ParticleSystem_setColors(lua_State *L) int r = luaL_checkint(L, 2); int g = luaL_checkint(L, 3); int b = luaL_checkint(L, 4); - int a = luaL_checkint(L, 5); + int a = luaL_optint(L, 5, 255); t->setColor(Color(r,g,b,a)); } else