
enum token
	{
	t_type,
	Rational: t_value,
	t_word[20],
	}


new bool:flag = true     /* "flag" can only hold "true" or "false" */
const error:success = 0
const error:fatal= 1
const error:nonfatal = 2
error:errno = fatal

native printf(const format[], {Float, _}: ...);

	new Float:chance_to_avoid = (p_resists[id][RESISTIDX_FIRE] >= RESIST_MAX_VALUE) ?
	  1.00 : (float( p_resists[id][RESISTIDX_FIRE] ) / float( RESIST_MAX_VALUE ))

    xplevel_lev[j] = XP_PER_LEVEL_BASE_LT + ( (j - 10) * XP_PER_LEVEL_LT) +
                     floatround( float( j / 20 ) * XP_PER_LEVEL_LT );


main() {
	new Float:xpos
	new Float:ypos

	new apple:elstar    /* variable "elstar" with tag "apple" */
	new orange:valencia /* variable "valencia" with tag "orange" */
	new x               /* untagged variable "x" */
	elstar = valencia   /* tag mismatch */
	elstar = x          /* tag mismatch */
	x = valencia        /* ok */

	new Float:chance_to_avoid = (p_resists[id][RESISTIDX_FIRE] >= RESIST_MAX_VALUE) ?
	  1.00 : (float( p_resists[id][RESISTIDX_FIRE] ) / float( RESIST_MAX_VALUE ))

	xplevel_lev[j] = XP_PER_LEVEL_BASE_LT + ( (j - 10) * XP_PER_LEVEL_LT) +
	  floatround( float( j / 20 ) * XP_PER_LEVEL_LT );

	if (apple:valencia < elstar)
		valencia = orange:elstar
		
some_label:	// target for a goto
	#pragma rational Float
	
	new Float:limit = -5.0
	new Float:value = -1.0
	if (value < limit)
	     printf("Value %f below limit %f\n", _:value, _:limit)
	else
	     printf("Value above limit\n")
	goto some_label
}

foo()
	if (ape)
		dofunc(1)
	else if (monkey)
		dofunc(2)
	else
		dofunc(3)
