Code:
var	gc_fadeout = 0.1; // decrement factor
var	gc_powerup = 15;	// increment factor

var 	gv_keypower = 0;	// the "power" of the key (depending on the pressrate)
var 	gv_keystate = 0;	// internal flag

// function to get the pressrate of a key (pass the scancode of the key)
function get_keypower(p_key){
	
	// reduce power
	gv_keypower=maxv(gv_keypower-time_step*gc_fadeout, 0);
	
	// ky released again
	if(!key_pressed(p_key)){gv_keystate=0;}
	
	// wait for key release
	if(gv_keystate==1){return(0);}
	
	// if key is pressed then power up
	if(key_pressed(p_key)){
		gv_keypower+=time_step*gc_powerup;
		gv_keystate=1;
	}
	
}


get_keypower(p_key) in der Schleife aufrufen (p_key ist der Scancode der gewünschten Taste).
In gv_keypower steht der Wert repräsentativ für die Anschlaghäufigkeit.
Mit gc_fadeout und gc_powerup das Verhalten (Werte) nach belieben einstellen.