Esempio n. 1
0
int process_client_message(char *message)
{
  float px, py, pz;
  int deg, id;
  char buf[MESSAGE_LENGTH];

  if(message == NULL)
  {
    fprintf(stderr, "NULL while attempting to process client message.\n");
  }

  sscanf(message, "%s", buf);

  if(strcmp(buf, "player") == 0)
  {
    sscanf(message, "player %f %f %f %d %d", &px, &py, &pz, &deg, &id);
    setPlayerPosition(id, px, py, pz, deg);
    player_flag[id] = 1;
  }
  else
  {
    fprintf(stderr, "unexpected message from client...\n");
  }

  return 0;
}
Esempio n. 2
0
void TimelineCursor::mouseDrag(const MouseEvent &e)
{
    if(_showCursor)
    {
        _currentXCoords = e.x;
        setPlayerPosition(_currentXCoords);
        repaint();
    }
    
}
Esempio n. 3
0
void TimelineCursor::mouseDown(const MouseEvent &e)
{
    if(_showCursor)
    {
        setMouseCursor(MouseCursor::IBeamCursor);
        _xScale = (float) ((_trackLength / getWidth() * _zoomRatio));
        setPlayerPosition(e.x);
        
        _stopTimer = false;
        startTimer(40);
        repaint();
    }
}
Esempio n. 4
0
int process_server_message(char *message, char *result)
{
  float px, py, pz;
  int x, y, z, deg, id;
  char buf[MESSAGE_LENGTH];

  if(message == NULL || result == NULL)
  {
    fprintf(stderr, "NULL while attempting to process server message.\n");
  }

  sscanf(message, "%s", buf);
  printf("m: %s\n", message);
  if(strcmp(buf, "done") == 0)
  {
    strcpy(result, buf);
    return 0;
  }
  if(strcmp(buf, "player") == 0)
  {
    sscanf(message, "player %f %f %f %d %d", &px, &py, &pz, &deg, &id);
    setPlayerPosition(id,px,py,pz,deg);
  }
  if(strcmp(buf, "mob") == 0)
  {
    sscanf(message, "mob %f %f %f %d %d", &px, &py, &pz, &deg, &id);
    setMobPosition(id,px,py,pz,deg);
  }
  if(strcmp(buf, "sun") == 0)
  {
    sscanf(message, "sun %f %f %f", &px, &py, &pz);
    setLightPosition(px,py,pz);
  }
  if(strcmp(buf, "dig") == 0)
  {
    sscanf(message, "dig %d %d %d", &x, &y, &z);
    world[x][y][z] = EMPTY;
    trimout();
  }
  if(strcmp(buf, "cloud") == 0)
  {
    sscanf(message, "cloud %d %d %d %d", &x, &y, &z, &id);
    world[x][y][z] = id;
  }

  return 0;
}