mirror of
https://github.com/godotengine/godot.git
synced 2025-10-24 10:23:28 +00:00
Add named colors to GDScript/core.
Names and values taken from https://en.wikipedia.org/wiki/X11_color_names
(cherry picked from commit 23381a530b)
This commit is contained in:
parent
c5bff5073e
commit
85585c7fc5
5 changed files with 210 additions and 1 deletions
|
|
@ -104,6 +104,7 @@ const char *GDFunctions::get_func_name(Function p_func) {
|
|||
"dict2inst",
|
||||
"hash",
|
||||
"Color8",
|
||||
"ColorN",
|
||||
"print_stack",
|
||||
"instance_from_id",
|
||||
};
|
||||
|
|
@ -1053,6 +1054,36 @@ void GDFunctions::call(Function p_func,const Variant **p_args,int p_arg_count,Va
|
|||
|
||||
r_ret=color;
|
||||
|
||||
} break;
|
||||
case COLORN: {
|
||||
|
||||
if (p_arg_count<1) {
|
||||
r_error.error=Variant::CallError::CALL_ERROR_TOO_FEW_ARGUMENTS;
|
||||
r_error.argument=1;
|
||||
r_ret=Variant();
|
||||
return;
|
||||
}
|
||||
|
||||
if (p_arg_count>2) {
|
||||
r_error.error=Variant::CallError::CALL_ERROR_TOO_MANY_ARGUMENTS;
|
||||
r_error.argument=2;
|
||||
r_ret=Variant();
|
||||
return;
|
||||
}
|
||||
|
||||
if (p_args[0]->get_type()!=Variant::STRING) {
|
||||
r_error.error=Variant::CallError::CALL_ERROR_INVALID_ARGUMENT;
|
||||
r_error.argument=0;
|
||||
r_ret=Variant();
|
||||
} else {
|
||||
Color color = Color::named(*p_args[0]);
|
||||
if (p_arg_count==2) {
|
||||
VALIDATE_ARG_NUM(1);
|
||||
color.a=*p_args[1];
|
||||
}
|
||||
r_ret=color;
|
||||
}
|
||||
|
||||
} break;
|
||||
|
||||
case PRINT_STACK: {
|
||||
|
|
@ -1507,6 +1538,12 @@ MethodInfo GDFunctions::get_info(Function p_func) {
|
|||
mi.return_val.type=Variant::COLOR;
|
||||
return mi;
|
||||
} break;
|
||||
case COLORN: {
|
||||
|
||||
MethodInfo mi("ColorN",PropertyInfo(Variant::STRING,"name"),PropertyInfo(Variant::REAL,"alpha"));
|
||||
mi.return_val.type=Variant::COLOR;
|
||||
return mi;
|
||||
} break;
|
||||
|
||||
case PRINT_STACK: {
|
||||
MethodInfo mi("print_stack");
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue