Zu 1:
Sieh dir einmal an was addAction an Parameter zurück gibt:
http://community.bistudio.com/wiki/addAction
Dein Array ( [player] ) ist in _this select 3 und den player müsstest du so herausholen:
_p01 = (_this select 3) select 0;
Geht aber einfach so:
_p01 = _this select 1;
weil der Caller von addAction zurück gemeldet wird.
Mach das einmal ordentlich, dann kannst du vielleicht deine anderen Probleme selber lösen.