Forum

> > CS2D > Scripts > teleportation with smoke grenade
Forums overviewCS2D overview Scripts overviewLog in to reply

English teleportation with smoke grenade

5 replies
To the start Previous 1 Next To the start

old Re: teleportation with smoke grenade

haha1955
User Off Offline

Quote
@user DC: where is the fail?


function Array(size,value)
local array = {}
for i = 1, size do
array[i]=value
end
return array
end

mx = Array(32,0)
my = Array(32,0)

timer(150,"requestdata","",0)


function requestdata()
reqcld(0,2)
end



addhook("clientdata","clientdata")
function clientdata(id,mode,x,y)
if mode == 2 then
mx[id] = x
my[id] = y
end
end

addhook("attack","client")
function client(id)
if player(id,"weapon") == 53 then
parse("setpos "..id.." "..mx[id].." "..my[id].."")
end
end

old Re: teleportation with smoke grenade

Mami Tomoe
User Off Offline

Quote
1
2
3
4
5
6
7
8
9
local exec = parse

function projectile_launch(p, wpn, x, y)
	if wpn == 53 then
		exec('setpos ' .. p .. ' ' .. x .. ' ' .. y)
	end
end

addhook('projectile', 'projectile_launch')

old Re: teleportation with smoke grenade

DC
Admin Off Offline

Quote
@user haha1955: Please use the code-tag when sharing code!
I see what you're doing there. Requesting the cursor position all the time and setting the player to that position when he attacks. That's a legit approach and it should work as well (didn't try it).

The problems
• it's complicated
• causes a lot of traffic because cursor position is requested all the time (you can use the cs2d lua cmd player command instead with "mousemapx" and "mousemapy")
• it's not what you asked for. It moves the player to the position at which he AIMED the moment THROWING the grenade. That's not the position were the grenade will land (e.g. when you aim at a spot behind a wall)

user Mami Tomoe wrote the code exactly like I suggested. That one should work fine and matches what you asked for.
To the start Previous 1 Next To the start
Log in to reply Scripts overviewCS2D overviewForums overview