Hola respondiendo primero a tu pregunta, aunque pueda parecer que es que no trata al 0 o al 1 como enteros no es eso.
El problema es que la variable posición no la estás definiendo como array en el argumento de la función, entonces te la trata como un simple float. Como supongo que estás empezando no te lo voy a poner con punteros, pero ten en cuenta que debes saber el largo del array si no quieres acceder a una dirección de memoria no reservada y obtener un error:
Un saludo.
El problema es que la variable posición no la estás definiendo como array en el argumento de la función, entonces te la trata como un simple float. Como supongo que estás empezando no te lo voy a poner con punteros, pero ten en cuenta que debes saber el largo del array si no quieres acceder a una dirección de memoria no reservada y obtener un error:
Código (c) [Seleccionar]
float ControlLlamarada(int counter,float position[] /**<-------------- Aquí está el fallo*/){
int FlareCounter = 0;
if(counter == 30){
game.getNextFlare(FlareCounter);
if(FlareCounter <= 10){
position[0] = 0;
position[1] = 0.5;
}
return position;
}
Un saludo.