Skip to content

Commit 0d35980

Browse files
committed
finished math demo
1 parent 640d331 commit 0d35980

File tree

6 files changed

+31
-18
lines changed

6 files changed

+31
-18
lines changed
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
surf_circle = surface_create(256, 256);
22
surf_curved = surface_create(256, 256);
33

4-
percentage = new ValueDelta(1, -0.01, 0, 1, VDLimitMode.CLAMP);
5-
alpha = new ValueDelta(1, -0.001, 0.25, 1, VDLimitMode.CLAMP);
4+
percentage = new DynamicValue(1, -0.01, 0, 1, DVLimitMode.CLAMP);
5+
alpha = new DynamicValue(1, -0.001, 0.25, 1, DVLimitMode.CLAMP);

current-scripts/Demos/useful-scripts/objects/obj_math_demo/Create_0.gml

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,5 +3,8 @@ vec_B = new Vector2(-1, 2);
33
vec_C = new Vector3(-2, 3, 4);
44
vec_D = new Vector3(10, -5, 7);
55

6-
pulse_counter = new ValueDelta(0, 0.01, 0, 1, VDLimitMode.WRAP);
7-
pulse_t = 0;
6+
pulse_counter = new DynamicValue(0, 0.01, 0, 1, DVLimitMode.WRAP);
7+
pulse_t = 0;
8+
9+
wrap_counter = new DynamicValue(-10, 0.01, -10, 10, DVLimitMode.WRAP);
10+
wrapped_value = 0;

current-scripts/Demos/useful-scripts/objects/obj_math_demo/Draw_0.gml

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,13 +7,16 @@ draw_text(room_width/2, 16, "Math Demo");
77
draw_set_halign(fa_left);
88
draw_text(16, 64, "Vectors");
99
draw_text(16, 176, "Normalized Vectors");
10+
draw_text(16, 384, "Soft Limiters");
1011
draw_text(640, 64, "Cross Products");
1112
draw_text(640, 176, "Normalized Cross Product");
1213

1314
draw_text(16, 256, "Pulse");
1415
draw_sprite_ext(spr_meter, 0, 16, 288, 0.25, 0.25, 0, c_gray, 1);
1516
draw_sprite_ext(spr_meter, 0, 16, 288, 0.25, 0.25, 0, $80FFFF, pulse_t);
1617

18+
draw_text(640, 256, "Wrap");
19+
1720
draw_set_font(fnt_demo);
1821
// Vectors
1922
draw_text(16, 96, "a = " + vec_A.to_string());
@@ -34,4 +37,8 @@ draw_text(640, 208, "c x d / |c x d| = " + cross_product_normalized(vec_C, vec_D
3437

3538
// Pulse
3639
draw_text(96, 288, "t: " + string(pulse_counter.v));
37-
draw_text(176, 288, "p(t): " + string(pulse_t));
40+
draw_text(176, 288, "p(t): " + string(pulse_t));
41+
42+
// Wrap
43+
draw_text(640, 288, "t: " + string(wrap_counter.v));
44+
draw_text(720, 288, "w(t): " + string(wrapped_value));
Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,5 @@
11
pulse_counter.update();
2-
pulse_t = pulse(pulse_counter.v, 0.5, 1);
2+
pulse_t = pulse(pulse_counter.v, 0.5, 1);
3+
4+
wrap_counter.update();
5+
wrapped_value = wrap(wrap_counter.v, 0, 4);

current-scripts/Demos/useful-scripts/objects/obj_soft_mover/Create_0.gml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
actual_xpos = new ValueDelta(start_v, start_d, actual_min, actual_max, VDLimitMode.NONE);
1+
actual_xpos = new DynamicValue(start_v, start_d, actual_min, actual_max, DVLimitMode.NONE);
22
soft_clamp_xpos = start_v;
33
soft_ceiling_xpos = start_v;
44
soft_floor_xpos = start_v;

current-scripts/Demos/useful-scripts/scripts/math_structs/math_structs.gml

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ function Vector3(_x, _y, _z) constructor {
1919
}
2020
}
2121

22-
enum VDLimitMode {
22+
enum DVLimitMode {
2323
NONE,
2424
CEILING,
2525
FLOOR,
@@ -30,8 +30,8 @@ enum VDLimitMode {
3030
WRAP
3131
}
3232

33-
/// @func ValueDelta(value, delta, min_v, max_v, clamp_mode)
34-
function ValueDelta(_value, _delta, _min_v, _max_v, _clamp_mode) constructor {
33+
/// @func DynamicValue(value, delta, min_v, max_v, clamp_mode)
34+
function DynamicValue(_value, _delta, _min_v, _max_v, _clamp_mode) constructor {
3535
v = _value;
3636
d = _delta;
3737
min_v = _min_v;
@@ -41,35 +41,35 @@ function ValueDelta(_value, _delta, _min_v, _max_v, _clamp_mode) constructor {
4141
static update = function() {
4242
if (d != 0) {
4343
switch (clamp_mode) {
44-
case VDLimitMode.NONE:
44+
case DVLimitMode.NONE:
4545
v += d;
4646
break;
4747

48-
case VDLimitMode.CEILING:
48+
case DVLimitMode.CEILING:
4949
v = min(v + d, max_v);
5050
break;
5151

52-
case VDLimitMode.FLOOR:
52+
case DVLimitMode.FLOOR:
5353
v = max(v + d, min_v);
5454
break;
5555

56-
case VDLimitMode.CLAMP:
56+
case DVLimitMode.CLAMP:
5757
v = clamp(v + d, min_v, max_v);
5858
break;
5959

60-
case VDLimitMode.SOFT_CEILING:
60+
case DVLimitMode.SOFT_CEILING:
6161
v = soft_ceiling(v, d, max_v);
6262
break;
6363

64-
case VDLimitMode.SOFT_FLOOR:
64+
case DVLimitMode.SOFT_FLOOR:
6565
v = soft_floor(v, d, min_v);
6666
break;
6767

68-
case VDLimitMode.SOFT_CLAMP:
68+
case DVLimitMode.SOFT_CLAMP:
6969
v = soft_clamp(v, d, min_v, max_v);
7070
break;
7171

72-
case VDLimitMode.WRAP:
72+
case DVLimitMode.WRAP:
7373
v = wrap(v + d, min_v, max_v);
7474

7575
default:

0 commit comments

Comments
 (0)