Start of the end?

This commit is contained in:
ineedbots 2021-05-07 18:47:54 -06:00
commit 8f1f131122
6 changed files with 132 additions and 0 deletions

26
.gitignore vendored Normal file
View File

@ -0,0 +1,26 @@
# Ignore everything in repository root
/*
# Files to not ignore
!/.gitignore
# Folder to not ignore
!/scripts
!/maps
/maps/*
!/maps/mp/
/maps/mp/*
!/maps/mp/bots/
!/maps/mp/gametypes/
/maps/mp/gametypes/*
!/maps/mp/gametypes/_playercards.gsc
*.zip
*.log
*.stat
logs/
demos/
images/
missingasset.csv

6
maps/mp/bots/_bot.gsc Normal file
View File

@ -0,0 +1,6 @@
#include common_scripts\utility;
#include maps\mp\_utility;
init()
{
}

View File

@ -0,0 +1,25 @@
// IW5 PC GSC
// Decompiled by https://github.com/xensik/gsc-tool
init()
{
level thread onPlayerConnect();
level thread maps\mp\bots\_bot::init();
}
onPlayerConnect()
{
for (;;)
{
level waittill( "connected", var_0 );
var_1 = var_0 maps\mp\gametypes\_persistence::statGet( "cardIcon" );
var_2 = tablelookupbyrow( "mp/cardIconTable.csv", var_1, 0 );
var_0 setcardicon( var_2 );
var_3 = var_0 maps\mp\gametypes\_persistence::statGet( "cardTitle" );
var_4 = tablelookupbyrow( "mp/cardTitleTable.csv", var_3, 0 );
var_0 setcardtitle( var_4 );
var_5 = var_0 maps\mp\gametypes\_persistence::statGet( "cardNameplate" );
var_0 setcardnameplate( var_5 );
}
}

View File

@ -0,0 +1,28 @@
game:onplayerdamage(function(_self, inflictor, attacker, damage, dflags, mod, weapon, point, dir, hitloc)
if (game:isplayer(attacker) ~= 1 or _self.sessionteam == attacker.sessionteam or _self == attacker) then
return
end
local huddamage = game:newclienthudelem(attacker)
huddamage.alignx = "center"
huddamage.horzalign = "center"
huddamage.x = 10
huddamage.y = 235
huddamage.fontscale = 1.6
huddamage.font = "objective"
huddamage:setvalue(damage)
if (hitloc == "head") then
huddamage.color = vector:new(1, 1, 0.25)
end
huddamage:moveovertime(1)
huddamage:fadeovertime(1)
huddamage.alpha = 0
huddamage.x = math.random(25, 70)
huddamage.y = 235 + math.random(25, 70) * (math.random(0, 1) == 1 and -1 or 1)
game:ontimeout(function()
huddamage:destroy()
end, 1000)
end)

24
scripts/test.gsc Normal file
View File

@ -0,0 +1,24 @@
init()
{
level thread onConnect();
}
onConnect()
{
for (;;)
{
level waittill("connected", player);
player thread connected();
}
}
connected()
{
self endon("disconnect");
for(;;)
{
self waittill("spawned_player");
}
}

23
scripts/test/__init__.lua Normal file
View File

@ -0,0 +1,23 @@
level:onnotify("connected", function(player)
print("Player connected: " .. player.name)
local onframe = game:oninterval(function()
if game:isalive(player) == 0 or not player:getguid():find("^bot") then
return
end
game:setdvar("bot" .. player:getentitynumber() .. "_buttons", game:randomintrange(0, 16384))
game:setdvar("bot" .. player:getentitynumber() .. "_movement", game:randomintrange(-127, 127) .. " " .. game:randomintrange(-127, 127))
game:setdvar("bot" .. player:getentitynumber() .. "_ping", game:randomintrange(0, 999))
local weapons = player:getweaponslistall()
game:setdvar("bot" .. player:getentitynumber() .. "_weapon", weapons[1 + game:randomint(weapons.getkeys():size())])
player:setplayerangles(vector:new(game:randomfloatrange(-180, 180), game:randomfloatrange(-180, 180), 0))
end, 50)
player:onnotifyonce("disconnect", function()
onframe:clear()
end)
end)