void ofxBoundaryBehavior::setup()
{
    space = new float();
    bAllocatedSpace = true;
    setSpace(0.0);
    setBoundary(0, ofGetWidth(), 0, ofGetHeight());
}
Exemple #2
0
void ws::game::Scene::addObject(ws::core::IGameObject* object) {
	objects.push_back(object);
	object->subscribeToScene(this);

	auto physicsComponent = object->getComponent<ws::components::PhysicalBody>("physics");
	physicsComponent->setSpace(space);

}
 bool InteriorPartitionSurfaceGroup_Impl::setSpaceAsModelObject(const boost::optional<ModelObject>& modelObject) {
   if (modelObject) {
     OptionalSpace intermediate = modelObject->optionalCast<Space>();
     if (intermediate) {
       return setSpace(*intermediate);
     }
     else {
       return false;
     }
   }
   else {
     resetSpace();
   }
   return true;
 }
Exemple #4
0
// Move to position; if saving and we own the buffer, try to resize
// and 0-fill the space; if loading and not out of range, move the pointer;
// otherwise, return error code.
bool FXMemoryStream::position(FXlong offset,FXWhence whence){
  if(dir==FXStreamDead){ fxerror("FXMemoryStream::position: stream is not open.\n"); }
  if(code==FXStreamOK){
    if(whence==FXFromCurrent) offset=offset+pos;
    else if(whence==FXFromEnd) offset=offset+endptr-begptr;
    if(dir==FXStreamSave){
      if(begptr+offset>=endptr){
        if(!owns){ setError(FXStreamFull); return false; }
        setSpace(offset);
        if(begptr+offset>=endptr) return false;
        }
      wrptr=begptr+offset;
      }
    else{
      if(begptr+offset>=endptr){ setError(FXStreamEnd); return false; }
      rdptr=begptr+offset;
      }
    pos=offset;
    return true;
    }
  return false;
  }
Exemple #5
0
bool checkForHit(COORDINATE* where, PLAYER* whom)
{
	char actual = getSpace(where, whom->board);
	if(actual == BOARD_SHIP) {
		setSpace(where, whom->board, GRID_HIT);
		setSpace(where, whom->view, GRID_HIT);
		whom->hits --;
		return true;
	} else if(actual == BOARD_WATER) {
		setSpace(where, whom->board, GRID_SPLOOSH);
		setSpace(where, whom->view, GRID_SPLOOSH);
		return false;
	} else {
		setSpace(where, whom->board, GRID_BAD);
		setSpace(where, whom->view, GRID_BAD);
		return false;
	}
}
Exemple #6
0
// Write at least count bytes from the buffer
FXuval FXMemoryStream::writeBuffer(FXuval count){
  if(owns){ setSpace(getSpace()+count); }
  return endptr-wrptr;
  }
Exemple #7
0
void interpretCommands(void)
{
  short i, num, den, nbars;
  Char STR2[256];
  short FORLIM;

  strcpy(title_line, cline[(long)title]);
  strcpy(part_line, cline[(long)part]);
  if (*cline[(long)poet] != '\0' || *cline[(long)composer] != '\0')
    sprintf(composer_line, "\\mtxComposerLine{%s}{%s}",
	    cline[(long)poet], cline[(long)composer]);
  else
    *composer_line = '\0';
  strcpy(pmx_line, cline[(long)pmx]);
  GetNextWord(options_line, cline[(long)options], blank_, dummy);
  FORLIM = known_styles;
  for (i = 0; i <= FORLIM - 1; i++)
    style_used[i] = false;
  applyStyles();
  setVoices(voices);
  FORLIM = known_styles;
  for (i = old_known_styles; i <= FORLIM - 1; i++) {
    if (!style_used[i]) {
      warning("The following style was supplied but not used", !print);
      puts(known_style[i]);
    }
  }
  setClefs(clefs);
  if (!redefined[(long)meter]) {
    sprintf(STR2, "You have not defined Meter, assuming \"%s\" ",
	    cline[(long)meter]);
    warning(STR2, !print);
  }
  getMeter(cline[(long)meter], &meternum, &meterdenom, &pmnum, &pmdenom);
  setDefaultDuration(meterdenom);
  if (meternum == 0 &&
      !(redefined[(long)pages] || redefined[(long)systems] ||
	redefined[(long)bars])) {
    strcpy(cline[(long)bars], "1");
    redefined[(long)bars] = true;
  }
  if (redefined[(long)pages] || redefined[(long)systems]) {
    if (redefined[(long)bars])
      warning("BARS/LINE ignored since you specified PAGES or SYSTEMS", print);
    if (redefined[(long)systems])
      getNum(cline[(long)systems], &n_systems);
    else
      warning("PAGES specified but not SYSTEMS", !print);
    if (redefined[(long)pages])
      getNum(cline[(long)pages], &n_pages);
    else
      warning("SYSTEMS specified but not PAGES", !print);
  } else if (redefined[(long)bars]) {
    getNum(cline[(long)bars], &nbars);
    if (nbars > 0) {
      n_pages = 0;
      n_systems = nbars;
    }
  }
  getNum(cline[(long)sharps], &n_sharps);
  setSpace(cline[(long)space]);
  setSize(cline[(long)msize]);
  getTwoNums(cline[(long)shortnote], &num, &den);
  if (den == 0)
    den = 1;
  short_note = num * 64 / den;
  if (*cline[(long)flats] != '\0') {
    getNum(cline[(long)flats], &n_sharps);
    n_sharps = -n_sharps;
  }
  setName();
  setIndent();
  setInitOctave();
  setOnly(cline[(long)only]);
  setRange(cline[(long)range]);
  setDimension(cline[(long)width], width);
  setDimension(cline[(long)height], height);
  if (*options_line != '\0') {
    warning("\"Options\" is cryptic and obsolescent.", !print);
    printf("  Use \"Enable\" and \"Disable\" instead.\n");
  }
  FORLIM = strlen(options_line);
  for (i = 0; i <= FORLIM - 1; i++)
    processOption(options_line[i]);
}
Exemple #8
0
void setShip(COORDINATE* where, PLAYER* whom)
{
	//printf("Setting "); printCoord(where); printf(" to ship.\n");
	setSpace(where, whom->board, BOARD_SHIP);
	setSpace(where, whom->view, VIEW_UNKNOWN);
}
Exemple #9
0
void setWater(COORDINATE* where, PLAYER* whom)
{
	setSpace(where, whom->board, BOARD_WATER);
	setSpace(where, whom->view, VIEW_UNKNOWN);
}
Exemple #10
0
void Cell::update()
{
	setSpace(list->occupied());
}
Exemple #11
0
Local void analyzeParagraph(struct LOC_paragraphSetup *LINK)
{
  paragraph_index i, FORLIM;

  *LINK->voice = 0;
  bottom = 0;
  top = nvoices + 1;
  clearLabels();
  clearTags();
  clearUptext();
  FORLIM = para_len;
  for (i = 1; i <= FORLIM; i++)
  {   /* ----- Paragraph analysis main loop ----- */
    if (*P[i-1] != '\0' && P[i-1][0] != comment) {
      NextWord(LINK->w, P[i-1], blank, colon);
      line_no = orig_line_no[i-1];
      LINK->l = strlen(LINK->w);
      LINK->is_labelled = (LINK->w[LINK->l-1] == colon &&
			   LINK->w[LINK->l-2] != barsym);
      if (LINK->is_labelled) {
	strcpy(LINK->P_keep, P[i-1]);
	predelete(P[i-1], LINK->l);
	shorten(LINK->w, LINK->l - 1);
	LINK->k = findVoice(LINK->w);   /* First look for a voice label */
	if (LINK->k > 0) {
	  *LINK->voice = LINK->k;
	  setMusicLineNo(*LINK->voice, i);
	} else if (LINK->w[0] == 'L')
	  maybeLyrics(*LINK->voice, i, LINK->w);
	else if (LINK->w[0] == 'C')
	  maybeChords(i, LINK);
	else if (LINK->w[0] == 'U')
	  maybeUptext(i, LINK);
	else {
	  if (startsWithIgnoreCase(LINK->w, "SPACE")) {
	    setSpace(P[i-1]);
	    must_respace = true;
	  } else {
	    if (startsWithIgnoreCase(LINK->w, "VOICES")) {
	      selectVoices(P[i-1]);
	      must_restyle = true;
	    } else {
	      strcpy(P[i-1], LINK->P_keep);
	      LINK->is_labelled = false;
	      if (!isNoteOrRest(LINK->w)) {
		error("Unknown line label", print);
		/** ------------ Maybe Space command ------------ */
		/** ------------ Maybe Voices command ------------ */
		/** Could be sticky attribute **/
	      }
	    }
	  }
	}
      }
      if (!LINK->is_labelled) {
	(*LINK->voice)++;
	setMusicLineNo(*LINK->voice, i);
      }
      if (*LINK->voice > bottom)
	bottom = *LINK->voice;
      if (*LINK->voice > 0 && *LINK->voice < top)
	top = *LINK->voice;
    }
  }
}