コード例 #1
0
ファイル: SDLlib.c プロジェクト: gregtour/duck-lang
int GlNormal3f(int argument_count, void* data)
{
    int error = 0;

    VALUE X = GetRecord("x", gCurrentContext);
    VALUE Y = GetRecord("y", gCurrentContext);
    VALUE Z = GetRecord("z", gCurrentContext);

    glNormal3f(TypeFloat(X), 
               TypeFloat(Y), 
               TypeFloat(Z));

    gLastExpression.type = VAL_NIL;
    gLastExpression.data.primitive = 0;
    return error;
}
コード例 #2
0
ファイル: SDLlib.c プロジェクト: gregtour/duck-lang
int GlColor3f(int argument_count, void* data)
{
    int error = 0;

    VALUE R = GetRecord("r", gCurrentContext);
    VALUE G = GetRecord("g", gCurrentContext);
    VALUE B = GetRecord("b", gCurrentContext);

    glColor3f(TypeFloat(R), 
              TypeFloat(G), 
              TypeFloat(B));

    gLastExpression.type = VAL_NIL;
    gLastExpression.data.primitive = 0;
    return error;
}
コード例 #3
0
ファイル: dmath.c プロジェクト: shohoku11wrj/duck-lang
/*Math.pow(base, exponent)*/
int MathPow(int arg_count){
  float base = 0.0;
  float exponent = 0.0;
  float val = 0.0;

  VALUE base_arg = GetRecord("base", gCurrentContext);
  VALUE exp_arg = GetRecord("exponent", gCurrentContext);

  base = TypeFloat(base_arg);
  exponent = TypeFloat(exp_arg);

  val = pow(base, exponent);

  gLastExpression.type = VAL_FLOATING_POINT;
  gLastExpression.floatp = val;

  return 0;
}
コード例 #4
0
ファイル: stdduck.c プロジェクト: gregtour/duck-lang
/* float(value) */
int DuckFloat(int argument_count, void* data)
{
    int error = 0;

    VALUE argument = GetRecord("value", gCurrentContext);

    gLastExpression.type = VAL_FLOATING_POINT;
    gLastExpression.data.floatp = TypeFloat(argument);
    
    return error;
}
コード例 #5
0
ファイル: dmath.c プロジェクト: shohoku11wrj/duck-lang
/*Math.atan(num)*/
int MathAtan(int arg_count){
  float input = 0.0;
  float val = 0.0;
  VALUE argument = GetRecord("num", gCurrentContext);

  input = TypeFloat(argument);
  val = atan(input);

  gLastExpression.type = VAL_FLOATING_POINT;
  gLastExpression.floatp = val;

  return 0;
}
コード例 #6
0
ファイル: dmath.c プロジェクト: shohoku11wrj/duck-lang
/*Math.tan(angle)*/
int MathTan(int arg_count){
  float angle = 0.0;
  float val = 0.0;
  VALUE argument = GetRecord("angle", gCurrentContext);

  angle = TypeFloat(argument);
  val = tan(angle);

  gLastExpression.type = VAL_FLOATING_POINT;
  gLastExpression.floatp = val;

  return 0;
}