Forum

> > CS2D > Scripts > bot doesent work correct
ForenübersichtCS2D-Übersicht Scripts-ÜbersichtEinloggen, um zu antworten

Englisch bot doesent work correct

Keine Antworten
Zum Anfang Vorherige 1 Nächste Zum Anfang

alt bot doesent work correct

EnderCrypt
User Off Offline

Zitieren
my bot doesent work correct, it gives error:
LUA ERROR: attempt to call a nil value
mosltly after it killed its target, its suppose to walk random untill someone in vision and range shots...

but it seems like only the bot with highest id reacts

im pretty new to lua nd dont se the wrong

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
direction = {}
mode = {}
target = {}

i = 0
while (i <= 32) do
i = i + 1
direction [i]= 0
mode [i] = 1
target [i] = 0
end
addhook ("attack","player_attack")
addhook ("die","player_die")
addhook ("movetile","player_new_tile")

function ai_update_dead(id)
ai_respawn(id)
end

function ai_onspawn(id)
mode [id] = 1
parse ("setname "..id.." police bot")
parse ("equip "..id.." 1")
parse ("equip "..id.." 81")
direction [id] = math.random (0,360)
end

function ai_update_living(id)
if mode [id] == 1 then
direction [id] = direction [id] + math.random (-10,10)
ai_move(id,direction[id],0)
ai_rotate(id,direction[id])
function player_attack (id_shot)
i = 0
while (i <= 32) do
i = i + 1
if (player(i,"bot")) == true then
if (player(id_shot,"bot")) == false then
if (id_shot == i) == false then
if ai_freeline(id,player(id_shot,"x"),player(id_shot,"y")) then
if (math.sqrt((player(id,"x") - player(id_shot,"x"))^2 + (player(id,"y") - player(id_shot,"y"))^2)) < 250 then
mode [i] = 2
target [i] = id_shot
end
end
end
end
end
end
end
end
if mode [id] == 2 then
if (player(target[id],"health")) > 0 then
if ai_freeline(id,player(target [id],"x"),player(target [id],"y")) then
ai_aim(id,player(target [id],"x"),player(target [id],"y"))
ai_move(id,player(id,"rot"),1)
ai_iattack(id)
else
mode [id] = 1
target [id] = 0
end
end
end
function player_new_tile (id_move,x,y)
if id_move == id then
ai_use(id)
end
end
end

function ai_hear_radio(source,radio)

end

function ai_hear_chat(source,msg,teamonly)

end
Zum Anfang Vorherige 1 Nächste Zum Anfang
Einloggen, um zu antworten Scripts-ÜbersichtCS2D-ÜbersichtForenübersicht