ViewVC Help
View File | Revision Log | View Changeset | Root Listing
root/Oni2/Daodan/src/Daodan_Config.c
(Generate patch)

Comparing Daodan/src/Daodan_Config.c (file contents):
Revision 1017 by alloc, Mon Mar 23 23:29:19 2015 UTC vs.
Revision 1162 by rossy, Sun Oct 24 02:50:32 2021 UTC

# Line 299 | Line 299 | void DDrConfig_Print()
299                                          break;
300                                  case C_CMD:
301                                          break;
302 +                                case C_FLOAT:
303 +                                        STARTUPMESSAGE("Option %s.%s = %f (def %f)", config[s].name, co->name, co->value.floatVal, co->defaultValue.floatVal);
304 +                                        break;
305                                  default:
306                                          STARTUPMESSAGE("Option %s.%s = %d (def %d)", config[s].name, co->name, co->value.intBoolVal, co->defaultValue.intBoolVal);
307                          }
# Line 360 | Line 363 | const char* DDrConfig_GetOptionTypeName(
363          switch (type) {
364                  case C_INT:
365                          return "Int";
366 +                case C_FLOAT:
367 +                        return "Float";
368                  case C_BOOL:
369                          return "Bool";
370                  case C_STRING:
# Line 390 | Line 395 | const char* DDrConfig_GetOptionValueStri
395                          return (boolV ? "true" : "false");
396                  case C_CMD:
397                          return 0;
398 +                case C_FLOAT:
399 +                        val = malloc(50);
400 +                        sprintf(val, "%f", optVal->floatVal);
401 +                        return val;
402                  default:
403                          val = malloc(20);
404                          sprintf(val, "%d", boolV);
# Line 410 | Line 419 | char DDrConfig_NonDefaultOptionValue(Con
419                          return 0;
420                  case C_INT:
421                          return opt->defaultValue.intBoolVal != opt->value.intBoolVal;
422 +                case C_FLOAT:
423 +                        return opt->defaultValue.floatVal != opt->value.floatVal;
424          }
425          return 0;
426   }
# Line 526 | Line 537 | void DDrIniCallback(const char* section,
537                          case C_INT:
538                                  co->value.intBoolVal = strtol(value, NULL, 0);
539                                  break;
540 +                        case C_FLOAT:
541 +                                co->value.floatVal = strtof(value, NULL);
542 +                                break;
543                          case C_BOOL:
544                                  co->value.intBoolVal = !_stricmp(value, "true");
545                                  break;

Diff Legend

Removed lines
+ Added lines
< Changed lines (old)
> Changed lines (new)