Add project code

This commit is contained in:
Andrew Trieu
2025-04-20 15:57:23 +03:00
committed by Andrew Trieu
commit 3fbd0e4977
612 changed files with 11196 additions and 0 deletions

View File

@@ -0,0 +1,36 @@
function get_random_weapon() {
// Get array of weapon keys
var weapon_keys = variable_struct_get_names(global.WeaponList);
var available_weapons = array_create(0);
// Filter out weapons the player already has
for (var i = 0; i < array_length(weapon_keys); i++) {
var weapon_key = weapon_keys[i];
var weapon = variable_struct_get(global.WeaponList, weapon_key); // FIXED THIS LINE
// Check if player already has this weapon
var already_has = false;
for (var j = 0; j < array_length(global.PlayerWeapons); j++) {
if (global.PlayerWeapons[j].name == weapon.name) {
already_has = true;
break;
}
}
if (!already_has) {
array_push(available_weapons, weapon);
}
}
// If there are available weapons, pick one randomly
if (array_length(available_weapons) > 0) {
var random_index = irandom(array_length(available_weapons) - 1);
var new_weapon = available_weapons[random_index];
// Add to player's inventory
array_push(global.PlayerWeapons, new_weapon);
return new_weapon;
}
return undefined;
}

View File

@@ -0,0 +1,13 @@
{
"$GMScript":"v1",
"%Name":"get_random_weapon",
"isCompatibility":false,
"isDnD":false,
"name":"get_random_weapon",
"parent":{
"name":"Scripts",
"path":"folders/Scripts.yy",
},
"resourceType":"GMScript",
"resourceVersion":"2.0",
}