Если создать одномерный массив чисел с плавающей точкой то он ведёт себя как целочисленный массив (отбрасывает дробную часть).
Например:
Code: Select all
v=new(2,FLOAT) //vx,vy
a=new(2,FLOAT) //ax,ay
clean(v) clean(a)
a[0]=0.5
printf("a[1]=%f \n",a[1])
v[0]=0.5
printf("v[1]=%f \n",v[1])
x=v[1]+a[1]
printf("v[1]+a[1]=%f \n",x)
frame(-1)
a[1]=0.000000
v[1]=0.000000
v[1]+a[1]=0.000000
Ожидалось 1,000000
Но если написать
v=new(2,1,FLOAT)
a=new(2,1,FLOAT)
То всё вычисляется верно. x=1. Но хотелось бы чтобы всё вычислялось и в таком виде: v=new(2,FLOAT).