本文整理汇总了C++中lisp::Writer::write_int方法的典型用法代码示例。如果您正苦于以下问题:C++ Writer::write_int方法的具体用法?C++ Writer::write_int怎么用?C++ Writer::write_int使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类lisp::Writer
的用法示例。
在下文中一共展示了Writer::write_int方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: switch
void
PlayerStatus::write(lisp::Writer& writer)
{
switch(bonus) {
case NO_BONUS:
writer.write_string("bonus", "none");
break;
case GROWUP_BONUS:
writer.write_string("bonus", "growup");
break;
case FIRE_BONUS:
writer.write_string("bonus", "fireflower");
break;
case ICE_BONUS:
writer.write_string("bonus", "iceflower");
break;
default:
log_warning << "Unknown bonus type." << std::endl;
writer.write_string("bonus", "none");
}
writer.write_int("fireflowers", max_fire_bullets);
writer.write_int("iceflowers", max_ice_bullets);
writer.write_int("coins", coins);
writer.write_int("max-score-multiplier", max_score_multiplier);
}
示例2:
void
CloudParticleSystem::write(lisp::Writer& writer)
{
writer.start_list("particles-clouds");
writer.write_int("z-pos", z_pos);
writer.end_list("particles-clouds");
}
示例3: save_squirrel_table
void save_squirrel_table(HSQUIRRELVM vm, int table_idx, lisp::Writer& writer)
{
// offset because of sq_pushnull
if(table_idx < 0)
table_idx -= 1;
//iterator table
sq_pushnull(vm);
while(SQ_SUCCEEDED(sq_next(vm, table_idx))) {
if(sq_gettype(vm, -2) != OT_STRING) {
std::cerr << "Table contains non-string key\n";
continue;
}
const char* key;
sq_getstring(vm, -2, &key);
switch(sq_gettype(vm, -1)) {
case OT_INTEGER: {
int val;
sq_getinteger(vm, -1, &val);
writer.write_int(key, val);
break;
}
case OT_FLOAT: {
float val;
sq_getfloat(vm, -1, &val);
writer.write_float(key, val);
break;
}
case OT_BOOL: {
SQBool val;
sq_getbool(vm, -1, &val);
writer.write_bool(key, val);
break;
}
case OT_STRING: {
const char* str;
sq_getstring(vm, -1, &str);
writer.write_string(key, str);
break;
}
case OT_TABLE: {
writer.start_list(key, true);
save_squirrel_table(vm, -1, writer);
writer.end_list(key);
break;
}
case OT_CLOSURE:
break; // ignore
case OT_NATIVECLOSURE:
break;
default:
std::cerr << "Can't serialize key '" << key << "' in table.\n";
break;
}
sq_pop(vm, 2);
}
sq_pop(vm, 1);
}
示例4:
void
DartTrap::write(lisp::Writer& writer)
{
writer.start_list("darttrap");
writer.write_float("x", start_position.x);
writer.write_float("y", start_position.y);
writer.write_float("initial-delay", initial_delay);
writer.write_float("fire-delay", fire_delay);
writer.write_int("ammo", ammo);
writer.end_list("darttrap");
}
示例5:
void
Statistics::write(lisp::Writer& writer)
{
writer.write_int("coins-collected", coins);
writer.write_int("coins-collected-total", total_coins);
writer.write_int("badguys-killed", badguys);
writer.write_int("badguys-killed-total", total_badguys);
writer.write_float("time-needed", time);
writer.write_int("secrets-found", secrets);
writer.write_int("secrets-found-total", total_secrets);
}
示例6:
void
Background::write(lisp::Writer& writer)
{
writer.start_list("background");
if (image_top.get() != NULL)
writer.write_string("image-top", imagefile_top);
writer.write_string("image", imagefile);
if (image_bottom.get() != NULL)
writer.write_string("image-bottom", imagefile_bottom);
writer.write_float("speed", speed);
writer.write_float("speed-y", speed_y);
writer.write_int("layer", layer);
writer.end_list("background");
}