diff options
| author | Simon Robertshaw <simon@hardwired.org.uk> | 2013-10-29 19:43:02 (GMT) |
|---|---|---|
| committer | Simon Robertshaw <simon@hardwired.org.uk> | 2013-10-29 19:43:02 (GMT) |
| commit | f2e28ee66721f9db1a6fe93604a7db3cbcb71199 (patch) | |
| tree | 28fbf3648046e29110b61676d233e8890647e4fb /src/simulation | |
| parent | e78dcae8517e3cc9efc4883935655d7098ab54b1 (diff) | |
| parent | 30d985ba7716238819185b96f811f7f6e5f4ffdb (diff) | |
| download | powder-f2e28ee66721f9db1a6fe93604a7db3cbcb71199.zip powder-f2e28ee66721f9db1a6fe93604a7db3cbcb71199.tar.gz | |
Merge branch 'feature_sparksigns' into develop
Diffstat (limited to 'src/simulation')
| -rw-r--r-- | src/simulation/Sign.cpp | 45 |
1 files changed, 26 insertions, 19 deletions
diff --git a/src/simulation/Sign.cpp b/src/simulation/Sign.cpp index 57a8a0d..b6a18cc 100644 --- a/src/simulation/Sign.cpp +++ b/src/simulation/Sign.cpp @@ -17,30 +17,37 @@ std::string sign::getText(Simulation *sim) char signText[256]; sprintf(signText, "%s", text.substr(0, 255).c_str()); - if (!strcmp(signText,"{p}")) + if(signText[0] && signText[0] == '{') { - float pressure = 0.0f; - if (x>=0 && x<XRES && y>=0 && y<YRES) - pressure = sim->pv[y/CELL][x/CELL]; - sprintf(buff, "Pressure: %3.2f", pressure); //...pressure - } - else if (!strcmp(signText,"{t}")) - { - if (x>=0 && x<XRES && y>=0 && y<YRES && sim->pmap[y][x]) - sprintf(buff, "Temp: %4.2f", sim->parts[sim->pmap[y][x]>>8].temp-273.15); //...temperature + if (!strcmp(signText,"{p}")) + { + float pressure = 0.0f; + if (x>=0 && x<XRES && y>=0 && y<YRES) + pressure = sim->pv[y/CELL][x/CELL]; + sprintf(buff, "Pressure: %3.2f", pressure); //...pressure + } + else if (!strcmp(signText,"{t}")) + { + if (x>=0 && x<XRES && y>=0 && y<YRES && sim->pmap[y][x]) + sprintf(buff, "Temp: %4.2f", sim->parts[sim->pmap[y][x]>>8].temp-273.15); //...temperature + else + sprintf(buff, "Temp: 0.00"); //...temperature + } else - sprintf(buff, "Temp: 0.00"); //...temperature + { + int pos=splitsign(signText); + if (pos) + { + strcpy(buff, signText+pos+1); + buff[strlen(signText)-pos-2]=0; + } + else + strcpy(buff, signText); + } } else { - int pos=splitsign(signText); - if (pos) - { - strcpy(buff, signText+pos+1); - buff[strlen(signText)-pos-2]=0; - } - else - strcpy(buff, signText); + strcpy(buff, signText); } return std::string(buff); |
