CGeneralTextHandler.cpp 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161
  1. #include "../stdafx.h"
  2. #include "CGeneralTextHandler.h"
  3. #include "../CGameInfo.h"
  4. #include "CLodHandler.h"
  5. #include <fstream>
  6. void CGeneralTextHandler::load()
  7. {
  8. std::string buf = CGameInfo::mainObj->bitmaph->getTextFile("GENRLTXT.TXT");
  9. int andame = buf.size();
  10. int i=0; //buf iterator
  11. for(i; i<andame; ++i)
  12. {
  13. if(buf[i]=='\r')
  14. break;
  15. }
  16. i+=2;
  17. for(int jj=0; jj<764; ++jj)
  18. {
  19. std::string buflet;
  20. loadToIt(buflet, buf, i, 2);
  21. allTexts.push_back(buflet);
  22. }
  23. std::string strs = CGI->bitmaph->getTextFile("ARRAYTXT.TXT");
  24. int itr=0;
  25. while(itr<strs.length()-1)
  26. {
  27. std::string tmp;
  28. CGeneralTextHandler::loadToIt(tmp, strs, itr, 3);
  29. arraytxt.push_back(tmp);
  30. }
  31. itr = 0;
  32. std::string strin = CGI->bitmaph->getTextFile("PRISKILL.TXT");
  33. for(int hh=0; hh<4; ++hh)
  34. {
  35. std::string tmp;
  36. CGeneralTextHandler::loadToIt(tmp, strin, itr, 3);
  37. primarySkillNames.push_back(tmp);
  38. }
  39. itr = 0;
  40. std::string strin2 = CGI->bitmaph->getTextFile("JKTEXT.TXT");
  41. for(int hh=0; hh<45; ++hh)
  42. {
  43. std::string tmp;
  44. CGeneralTextHandler::loadToIt(tmp, strin2, itr, 3);
  45. jktexts.push_back(tmp);
  46. }
  47. }
  48. void CGeneralTextHandler::loadToIt(std::string &dest, std::string &src, int &iter, int mode)
  49. {
  50. switch(mode)
  51. {
  52. case 0:
  53. {
  54. int hmcr = 0;
  55. for(iter; iter<src.size(); ++iter)
  56. {
  57. if(src[iter]=='\t')
  58. ++hmcr;
  59. if(hmcr==1)
  60. break;
  61. }
  62. ++iter;
  63. int befi=iter;
  64. for(iter; iter<src.size(); ++iter)
  65. {
  66. if(src[iter]=='\t')
  67. break;
  68. }
  69. dest = src.substr(befi, iter-befi);
  70. ++iter;
  71. hmcr = 0;
  72. for(iter; iter<src.size(); ++iter)
  73. {
  74. if(src[iter]=='\r')
  75. ++hmcr;
  76. if(hmcr==1)
  77. break;
  78. }
  79. iter+=2;
  80. break;
  81. }
  82. case 1:
  83. {
  84. int hmcr = 0;
  85. for(iter; iter<src.size(); ++iter)
  86. {
  87. if(src[iter]=='\t')
  88. ++hmcr;
  89. if(hmcr==1)
  90. break;
  91. }
  92. ++iter;
  93. int befi=iter;
  94. for(iter; iter<src.size(); ++iter)
  95. {
  96. if(src[iter]=='\r')
  97. break;
  98. }
  99. dest = src.substr(befi, iter-befi);
  100. iter+=2;
  101. break;
  102. }
  103. case 2:
  104. {
  105. int befi=iter;
  106. for(iter; iter<src.size(); ++iter)
  107. {
  108. if(src[iter]=='\t')
  109. break;
  110. }
  111. dest = src.substr(befi, iter-befi);
  112. ++iter;
  113. int hmcr = 0;
  114. for(iter; iter<src.size(); ++iter)
  115. {
  116. if(src[iter]=='\r')
  117. ++hmcr;
  118. if(hmcr==1)
  119. break;
  120. }
  121. iter+=2;
  122. break;
  123. }
  124. case 3:
  125. {
  126. int befi=iter;
  127. for(iter; iter<src.size(); ++iter)
  128. {
  129. if(src[iter]=='\r')
  130. break;
  131. }
  132. dest = src.substr(befi, iter-befi);
  133. iter+=2;
  134. break;
  135. }
  136. case 4:
  137. {
  138. int befi=iter;
  139. for(iter; iter<src.size(); ++iter)
  140. {
  141. if(src[iter]=='\t')
  142. break;
  143. }
  144. dest = src.substr(befi, iter-befi);
  145. iter++;
  146. break;
  147. }
  148. }
  149. }