Ayuda con una variable Float
#1

Bueno, mi idea es hacer un comando para curarse, calculando el costo del servicio dependiendo de la vida que le falte al usuario, el problema es que al calcular el precio se calcula como una variable float por lo cual me da un numero demasiado grande, no entiendo que puedo hacer para hacer el calculo sin que me deje un resultado en float.
pawn Код:
if(IsPlayerInRangeOfPoint(playerid,1.0,295.0522,568.9972,1026.1859))
        {
            new Float:Vida,Float:calculo,string[256],calculo2;
            GetPlayerHealth(playerid,Vida);
            if(Vida > 99) return SCM(playerid,-1,"Tu no necesitas este servicio en este momento");
            calculo = 100-Vida;
            format(string,256,"Bienvenido al hospital Central de Los Santos\n\nNecesitas una revisiуn medica\n\nCosto de la revisiуn: %d",calculo*10);
            ShowPlayerDialog(playerid,DHOSPITAL,DIALOG_STYLE_MSGBOX,"Servicio Mйdico",string,"Aceptar","Cancelar");
        }
Reply
#2

Es sencillo, simplemente debes redondear el valor flotante para convertirlo en un interger. Para ello debes utilizar la funciуn floatround.

Ejemplo de uso:

pawn Код:
new int = floatround(calculo, floatround_round);
Reply
#3

Perfecto, desconocia esa funcion, gracias.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)