Gamestudio Links
Zorro Links
Newest Posts
Blobsculptor tools and objects download here
by NeoDumont. 03/28/24 03:01
Issue with Multi-Core WFO Training
by aliswee. 03/24/24 20:20
Why Zorro supports up to 72 cores?
by Edgar_Herrera. 03/23/24 21:41
Zorro Trader GPT
by TipmyPip. 03/06/24 09:27
VSCode instead of SED
by 3run. 03/01/24 19:06
AUM Magazine
Latest Screens
The Bible Game
A psychological thriller game
SHADOW (2014)
DEAD TASTE
Who's Online Now
2 registered members (Imhotep, opm), 785 guests, and 4 spiders.
Key: Admin, Global Mod, Mod
Newest Members
sakolin, rajesh7827, juergen_wue, NITRO_FOREVER, jack0roses
19043 Registered Users
Previous Thread
Next Thread
Print Thread
Rate Thread
C-Lite version Diverse Movement = AUM 82 #462209
09/13/16 22:29
09/13/16 22:29
Joined: Dec 2009
Posts: 19
Saskatchewan
C
codeChallenged Offline OP
Newbie
codeChallenged  Offline OP
Newbie
C

Joined: Dec 2009
Posts: 19
Saskatchewan
zip file download

I spent the last few days doing translation. Still a few glitches, but I'm off on holidays. If you get stuck use the H key to start on the ground again.

"Diverse Movement
Enjoy David Lancaster's "Diverse movement" code and demo; it includes a diverse range of movements:
-pole climbing
-wall climbing
-ledge grabbing and ledge shimmying
-automatic ledge grabbing
-rope climbing
-rope walking
-monkey bars
-ladder climbing (including wonkey ladders)
-rail grinding
-smooth interpolation between movement states
"

Attached Files shot_1.jpgshot_0.jpgshot_2.jpg
Last edited by codeChallenged; 09/14/16 02:36. Reason: Add pictures
Re: C-Lite version Diverse Movement = AUM 82 [Re: codeChallenged] #463799
12/29/16 04:44
12/29/16 04:44
Joined: Dec 2009
Posts: 19
Saskatchewan
C
codeChallenged Offline OP
Newbie
codeChallenged  Offline OP
Newbie
C

Joined: Dec 2009
Posts: 19
Saskatchewan
//This file variables.c is missing from my post
#define camera_3rd_mode 0
#define camera_freemove_mode 1
#define camera_strafe_mode 2
var camera_move_mode;

//////////////////////////////
// #defines
//////////////////////////////
#define animation_speed_ent skill1

#define transparent_state skill1

#define move_to_x skill13
#define move_to_y skill14
#define move_to_z skill15

#define rot_force_pan skill16
#define rot_force_tilt skill17
#define rot_force_roll skill18
#define original_x skill16
#define original_y skill17
#define original_z skill18

#define rot_velocity_pan skill19
#define rot_velocity_tilt skill20
#define rot_velocity_roll skill21
#define move_x skill22
#define move_y skill23
#define move_z skill24
#define force_x skill25
#define force_y skill26
#define force_z skill27
#define velocity_x skill28
#define velocity_y skill29
#define velocity_z skill30
#define animate skill31
#define animate2 skill32
#define animblend skill33
#define currentframe skill34
#define blendframe skill35
#define animated_attach skill50 //aniamted model attached to collision model
#define jumping_mode skill51
#define z_dist skill52
#define ent_gravity skill53
#define hit_by_player skill54
//skill55 entity_type
#define node skill56
#define edge skill57

#define ground_angle skill66 //angle of pan from the normal of the surface
#define ground_tilt skill67 //angle of tilt of ground

#define null_type 0
#define mesh_climbable_type 20
#define mesh_pole_type 21
#define mesh_grindrail_type 22
#define mesh_tightrope_type 23
#define mesh_ladder_type 24
#define mesh_monkey_type 25
#define entity_type skill55

#define state_null 0
#define state_combat 1
#define state_jumping 2
#define state_climb_ledge 3 //climb up a knee height ledge or one you're hanging from
#define state_jump_ledge 4 //jump up onto medium heigh ledge
#define state_jump_up 5 //jump up to grab onto high ledge to shimmy
#define state_shimmy 6 //shimmy across ledge/wall
#define state_climb_wall 7 //climb along a surface
#define state_climb_pole 8 //pole climbing
#define state_rail_grind 9 //rail grinding
#define state_mount_rail_grind 10 //mount rail grind
#define state_climb_roof 11 //climb a ceiling
#define state_tight_rope 12 //tight rope walking
#define state_climb_ladder 13 //ladder climbing
#define state_climb_monkey 14 //climb up a bunch of hairy monkeys
#define state_machine skill61

//////////////////////////////
// #defines animation
//////////////////////////////
#define nullframe -2
#define blend -1
#define stand 0
#define run 1
#define walk 2
#define jump 3
#define fall 4
#define strafe_left 5
#define strafe_right 6
#define strafe_back 7
#define attack_a 8
#define attack_b 9
#define attack_c 10
#define jumpflip 30
#define climb_ledge 50
#define hang_idle 51
#define hang_move 52
#define climb_x 53
#define climb_y 54
#define poleclimb 55
#define poleslide 56
#define slidemove 57
#define slidejump 58
#define rope_stand 59
#define rope_run 60
#define rope_jump 61

var camera_sensitivity = 1;
var player_speed = 1.4;
var player_shimmy_speed = 1.4;
var player_climb_speed = 1.4;
var safe_fall_height = 65;


//////////////////////////////
// camera
//////////////////////////////

//3rd person camera``//vectors not vars
ANGLE camera_force;
ANGLE camera_force2; //a secondary force to incorporate a slow acceleration with auto camera
VECTOR camera_force_to;
var camera_distance = 200;

VECTOR camera_focus_point;
VECTOR camera_focus_offset;

var camera_auto_angle_offset; //angle at which must be between camera and player for camera to auto move towards player, used for wall climbing, pole climbing etc
var camera_auto_speed = 0.15; //speed at which auto camera moves


//////////////////////////////
// entity pointers
//////////////////////////////

ENTITY* animate_ent;
ENTITY* temp_ent;
ENTITY* tight_rope_ent;
ENTITY* ladder_ent;
ENTITY* monkey_ent;
ENTITY* pole_ent; //current pole player is climbing
ENTITY* grindrail_ent; //ignore railgrind entity with camera collision

//////////////////////////////
// keys
//////////////////////////////

var pkey_mouse_left;
var pkey_mouse_right;
var pkey_up;
var pkey_down;
var pkey_left;
var pkey_right;
var pkey_space;
var pkey_shift;

STRING* key__cuu = "cuu";
STRING* key__cud = "cud";
STRING* key__cul = "cul";
STRING* key__cur = "cur";
STRING* key__cuu2 = "w";
STRING* key__cud2 = "s";
STRING* key__cul2 = "a";
STRING* key__cur2 = "d";
STRING* key__space = "space";
STRING* key__shift = "shiftr";
STRING* key__shift2 = "shiftl";

STRING* key__mouse_left2 = "alt";
//string key__mouse_right2 = "z";

var mouse_left_delay; //delay before firing again

var mouse_left_press;
var mouse_right_press;
var space_press;
var up_press;
var down_press;
var Z_press;
var b_press;
var f_press;
var r_press;
var t_press;

var mouse_move_idle; //time that has passed since mouse was last moved

//////////////////////////////
// player
//////////////////////////////
var on = 1; //on,off not defined
var off = 0;

//climbing

VECTOR original_pos;

var pole_climb_angle;
var scan_climb_state; //set to 1, don't scan for walls until reach ground
var climb_transition_press; //to stop player instantly going back and forth between roof and wall climbing

//jumping
VECTOR player_move_from; //from vars to use .x functions
VECTOR player_move_to;
VECTOR player_move_to_original; //a jump can be slowed down in mid air and slightly offset, but not sped up faster than original jump
var player_jump_distance = 150; //maximum distance player can jump
var player_jump_angle_offset; //for making player jump backwards, offset player's angle
var player_jump_z_mode; //0 for 180 degree sin wave z movement, 1 for vec_lerp

var player_jump_height; //tight rope jumping (hitting roof)

var player_time_since_jump; //time since player last jumped, so player doesn't wall jump too fast

//melee
var combo_move_speed;

//moving
var player_strafe_direction; //angle player is moving in strafe mode, used for scanning etc

//rail grinding
var player_grind_direction;
var player_grinding_speed; //absolute speed at which player moves, acceleration etc
var player_node_info[6]; //following paths
var player_node_info_set[6]; //set the information in nodes and don't change unless non 0
var player_grind_type; //0 = instant turn movement, 1 = slow turn/movement


//////////////////////////////
// temp
//////////////////////////////

VECTOR temp ;// from var, also temp_local below
VECTOR temp3;
//VECTOR temp4;
//VECTOR temp6;
//
ANGLE temp2; //xyz used for pan,tilt,roll
//ANGLE temp5;
//ANGLE temp7;
//ANGLE tempA;
var temp2A [6];
var tempV;

var tamp [6];
var tamp2 [6];
var tamp3 [6];
var tamp4 [6];
var tamp5 [6];
var tamp6 [6];


VECTOR temp_local[6];
var result_local;

var result2;
var result3;
var result4;
var result5;
var result6;



STRING* temp_string = " ";
STRING* temp_string2 = " ";


Moderated by  HeelX, Lukas, rayp, Rei_Ayanami, Superku, Tobias, TWO, VeT 

Gamestudio download | chip programmers | Zorro platform | shop | Data Protection Policy

oP group Germany GmbH | Birkenstr. 25-27 | 63549 Ronneburg / Germany | info (at) opgroup.de

Powered by UBB.threads™ PHP Forum Software 7.7.1