32 lines
784 B
Python
32 lines
784 B
Python
import os
|
|
|
|
from .categories import CATE_UTILS
|
|
from .utils.any_hack import any
|
|
from .utils.node_defs import FEAlwaysChangeNode
|
|
from random import Random
|
|
|
|
|
|
class FERandomBool(FEAlwaysChangeNode):
|
|
|
|
@classmethod
|
|
def INPUT_TYPES(cls):
|
|
return {
|
|
"required": {
|
|
"true_prob": ("FLOAT", {"default": 0.5, "min": 0, "max": 1, "step": 0.01}),
|
|
"seed": ("INT", {"default": 0, "min": 0, "max": 0xffffffffffffffff}),
|
|
},
|
|
}
|
|
|
|
RETURN_TYPES = ("BOOLEAN",)
|
|
RETURN_NAMES = ('bool',)
|
|
FUNCTION = "get_rand"
|
|
random_inst = Random()
|
|
|
|
OUTPUT_NODE = True
|
|
|
|
CATEGORY = CATE_UTILS
|
|
|
|
def get_rand(self, true_prob, seed):
|
|
self.random_inst.seed(seed)
|
|
return (self.random_inst.random() < true_prob,)
|