BGE: Adding a Max Jumps value to the character physic window

Actually we only have a Python API that allows to change the max jumps value.
The patch also allows non programmers to change the maximum numbers of jumps.

Reviewers: panzergame, sybren, campbellbarton, lordloki, moguri, agoose77

Reviewed By: lordloki, moguri

Projects: #game_engine

Differential Revision: https://developer.blender.org/D1302
This commit is contained in:
Thomas Szepe
2015-10-11 18:28:43 +02:00
parent 88005475db
commit 3dd83b533a
10 changed files with 21 additions and 4 deletions

View File

@@ -1041,6 +1041,7 @@ Object *BKE_object_add_only_object(Main *bmain, int type, const char *name)
ob->step_height = 0.15f;
ob->jump_speed = 10.0f;
ob->fall_speed = 55.0f;
ob->max_jumps = 1;
ob->col_group = 0x01;
ob->col_mask = 0xffff;
ob->preview = NULL;

View File

@@ -189,7 +189,7 @@ typedef struct Object {
/* did last modifier stack generation need mapping support? */
char lastNeedMapping; /* bool */
char pad[5];
char pad;
/* dupli-frame settings */
int dupon, dupoff, dupsta, dupend;
@@ -222,6 +222,8 @@ typedef struct Object {
float step_height;
float jump_speed;
float fall_speed;
unsigned char max_jumps;
char pad2[3];
/** Collision mask settings */
unsigned short col_group, col_mask;

View File

@@ -1771,6 +1771,14 @@ static void rna_def_object_game_settings(BlenderRNA *brna)
RNA_def_property_float_default(prop, 55.0f);
RNA_def_property_ui_text(prop, "Fall Speed Max", "Maximum speed at which the character will fall");
prop = RNA_def_property(srna, "max_jumps", PROP_INT, PROP_NONE);
RNA_def_property_int_sdna(prop, NULL, "max_jumps");
RNA_def_property_range(prop, 1, CHAR_MAX);
RNA_def_property_ui_range(prop, 1, 10, 1, 1);
RNA_def_property_int_default(prop, 1);
RNA_def_property_ui_text(prop, "Max Jumps",
"The maximum number of jumps the character can make before it hits the ground.");
/* Collision Masks */
prop = RNA_def_property(srna, "collision_group", PROP_BOOLEAN, PROP_LAYER_MEMBER);
RNA_def_property_boolean_sdna(prop, NULL, "col_group", 1);