X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=synfig-core%2Ftrunk%2Fsrc%2Fmodules%2Fmod_noise%2Fvaluenode_random.cpp;h=fdfa331f15a8fa2b144a4364e4e90a935da2793c;hb=f5cd94e18827b106d334e8d2de03d82838259f1f;hp=101f793e5c49825f572cbed50114fcbe4ef3a211;hpb=522e7b6cd25a7458e3813368998c0b20b1699110;p=synfig.git diff --git a/synfig-core/trunk/src/modules/mod_noise/valuenode_random.cpp b/synfig-core/trunk/src/modules/mod_noise/valuenode_random.cpp index 101f793..fdfa331 100644 --- a/synfig-core/trunk/src/modules/mod_noise/valuenode_random.cpp +++ b/synfig-core/trunk/src/modules/mod_noise/valuenode_random.cpp @@ -6,7 +6,7 @@ ** ** \legal ** Copyright (c) 2002-2005 Robert B. Quattlebaum Jr., Adrian Bentley -** Copyright (c) 2007 Chris Moore +** Copyright (c) 2007, 2008 Chris Moore ** ** This package is free software; you can redistribute it and/or ** modify it under the terms of the GNU General Public License as @@ -67,6 +67,9 @@ ValueNode_Random::ValueNode_Random(const ValueBase &value): case ValueBase::TYPE_ANGLE: set_link("link",ValueNode_Const::create(value.get(Angle()))); break; + case ValueBase::TYPE_BOOL: + set_link("link",ValueNode_Const::create(value.get(bool()))); + break; case ValueBase::TYPE_COLOR: set_link("link",ValueNode_Const::create(value.get(Color()))); break; @@ -124,6 +127,10 @@ ValueNode_Random::operator()(Time t)const return ((*link_)(t).get( Angle()) + Angle::deg(random(Smooth(smooth), 0, 0, 0, speed) * radius)); + case ValueBase::TYPE_BOOL: + return round_to_int((*link_)(t).get( bool()) + + random(Smooth(smooth), 0, 0, 0, speed) * radius) > 0; + case ValueBase::TYPE_COLOR: return (((*link_)(t).get( Color()) + Color(random(Smooth(smooth), 0, 0, 0, speed), @@ -173,32 +180,17 @@ ValueNode_Random::get_local_name()const } bool -ValueNode_Random::set_link_vfunc(int i,ValueNode::Handle x) +ValueNode_Random::set_link_vfunc(int i,ValueNode::Handle value) { assert(i>=0 && i