Hola he copiado el siguiente código para probarlo :GMS:, pero me muestra error en la linea 4 posición 10: Unknow funtion or script: angle_diff. Y la verdad no sé a que se deba, escribí bien el código pero aún así me marca error.
target = noone;
if (instance_exists(target))
{
angle_diff(point_direction(x, y, target.x, target.y),
direction);
direction += sign(diff) * min(abs(diff), 4);
}
if (distance_to_object(obj_colibri)>range)
{instance_destroy();}
Espero que alguien por favor me diga cuál es el error y así solucionarlo, quiero aclarar que apenas estoy viendo el GML, así que soy novato.
gracias por su tiempo.
Pues eso: script o función desconocida. GM:S no reconoce esa función angle_diff
Lo más probable es que el código es de GM8, y el autor creó una función personal, conocida como script, para calcular la diferencia entre dos ángulos. Es decir, aparte de este código que has posteado, hay un script de nombre angle_diff que te está faltando incluír.
GM8 no tiene una función así, pero GM:S ya incluye una función para calcular la diferencia entre dos ángulos. Si usas GM:S hay POSIBILIDAD de que escribiendo angle_difference en lugar de angle_diff se solucione el error
No, me sigue marcando el mismo error, cambiando angle_diff por angle_difference.
Qué versión tienes de GM:S? Si mal no recuerdo, angle_difference es una función agregada recientemente, yo la uso y me la reconoce sin problemas.
Aparte de eso, no me puedo aventurar a todo el proyecto, pero de lo que se ve en el código que pusiste, el script angle_diff no parece afectar ni hacer nada, puede que el código interno del script si modifique variables o haga otros cálculos, pero en el bloque que pusiste, no se ve que haga algo con la diferencia entre ángulos. Para no estar adivinando, lo mejor sería que compartieras el proyecto de donde estás sacando el código.
Según el código, en el árbol de recursos del proyecto original, en la sección SCRIPTS debe haber un script llamado angle_diff, pero como dije, para no basarnos en sólo suposiciones, lo mejor es que subas todo el proyecto
Tengo :GMS: versión 1.1.964, el proyecto completo es este:
This example assumes have a bullet sprite, 16x2 pixels.
Also assumes you have an enemy parent object, obj_enemy.
[b]obj_bullet[/b]
----------------------------------------------------------------------------------------
[u]Create Event[/u]
----------------------------------------------------------------------------------------
target = instance_nearest(x, y, obj_enemy);
speed=5;
alarm[0]=50;
alarm[0] = 60; // Life of missile targetting
friction = -0.1;
range=600;
[u]Alarm 0 Event[/u]
----------------------------------------------------------------------
target = noone;
[u]Step Event[/u]
----------------------------------------------------------------------
target = noone;
if (instance_exists(target)) {
diff = angle_diff(point_direction(x, y, target.x, target.y),
direction);
direction += sign(diff) * min(abs(diff), 4);
}
if (distance_to_object(obj_enemy)>range)
{instance_destroy();}
SI no le ayuda Penumbra Peor yo?????? :-[ :-[ :-[ :-[ :-[ :-[ :-[ :-[ :-[ :-[ :-[ :-[
lo siento de no poderte ayudar.
amigo para usar el angle_difference hay que tener la versión 1.3 o MAYOR ya que NO esta en la versión que tienes ni en la 1.2!!!
saludos OCA....
:( Bueno gracias a todos por la ayuda, ya decía yo que había copiado bien el código. Aprovechando si alguien que tenga la versión 1.3 me pueda dar el código del script angle_difference, para incorporarla al ejemplo, funcionaría?