Advertisement
Guest User

CivType Autocorrect by King_Hual

a guest
Sep 27th, 2012
349
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 3.00 KB | None | 0 0
  1. /*===============================*
  2.  *     CivType Autocorrect
  3.  *        Version 1.0.0
  4.  *        By King_Hual
  5.  *===============================*/
  6.  
  7. #if defined _civtype_included
  8.         #endinput
  9. #endif
  10. #define _civtype_included
  11.  
  12. stock CivConvert(const input[], output[], size)
  13. {
  14.     new curSize = 0, changes = 0, i=0;
  15.     if(input[0] >= 97 && input[0] <= 122)
  16.     {
  17.         output[0] = input[0] - 32;
  18.         i++;
  19.     }
  20.     else if(input[curSize] == 33 || input[curSize] == 44 || input[curSize] == 46 || input[curSize] == 63 || input[curSize] == 32)
  21.     {
  22.         output[0] = input[0];
  23.         i++;
  24.     }
  25.     while(i<=size)
  26.     {
  27.         if(input[i] == '\0')
  28.         {
  29.             if(input[curSize] != 33 && input[curSize] != 44 && input[curSize] != 46 && input[curSize] != 63 && input[curSize] != 32)
  30.             {
  31.                 output[curSize+1] = 46;
  32.                 output[curSize+2] = '\0';
  33.             }
  34.             break;
  35.         }
  36.         else {
  37.             curSize++;
  38.             changes = 0;
  39.             if(input[i] == 105 && input[i-1] == 32 && input[i+1] == 32)
  40.             {
  41.                 output[curSize] = input[i] - 32;
  42.                 changes = 1;
  43.             }
  44.             if(input[i] >= 65 && input[i] <= 90 && input[i-1] != 32)
  45.             {
  46.                 output[curSize] = input[i] + 32;
  47.                 changes = 1;
  48.             }
  49.             switch(input[i])
  50.             {
  51.                 case 33,44,46,63:
  52.                 {
  53.                     if(input[i+1] != 33 && input[i+1] != 44 && input[i+1] != 46 && input[i+1] != 63 && input[i+1] != 32)
  54.                     {
  55.                         output[curSize] = input[i];
  56.                         curSize++;
  57.                         output[curSize] = 32;
  58.                         curSize++;
  59.                         if(input[i+1] >= 97 && input[i+1] <= 122 && input[i] != 44)
  60.                         {
  61.                             output[curSize] = input[i+1] - 32;
  62.                         }
  63.                         else
  64.                         {
  65.                             output[curSize] = input[i+1];
  66.                         }
  67.                         changes = 1;
  68.                         i++;
  69.                     }
  70.                     else if(input[i+1] != 33 && input[i+1] != 44 && input[i+1] != 46 && input[i+1] != 63 && input[i+1] == 32 && input[0] >= 97 && input[0] <= 122 && input[i] != 44)
  71.                     {
  72.                         output[curSize] = input[i];
  73.                         curSize++;
  74.                         output[curSize] = input[i+1];
  75.                         curSize++;
  76.                         output[curSize] = input[i+2] - 32;
  77.                         changes = 1;
  78.                         i+=2;
  79.                     }
  80.                 }
  81.             }
  82.             if(input[i] == 32 && (input[i+1] == 111 || input[i+1] == 79) && (input[i+2] == 114 || input[i+2] == 82) && input[i+3] == 32)
  83.             {
  84.                 if(input[i-1] != 33 && input[i-1] != 44 && input[i-1] != 46 && input[i-1] != 63 )
  85.                 {
  86.                     output[curSize] = 44;
  87.                     curSize++;
  88.                     output[curSize] = input[i];
  89.                     curSize++;
  90.                     output[curSize] = input[i+1];
  91.                     curSize++;
  92.                     output[curSize] = input[i+2];
  93.                     curSize++;
  94.                     output[curSize] = input[i+3];
  95.                     changes = 1;
  96.                     i+=3;
  97.                 }
  98.                 else if(input[i+1] == 111) {
  99.                     output[curSize] = input[i];
  100.                     curSize++;
  101.                     output[curSize] = input[i+1] - 32;
  102.                     curSize++;
  103.                     output[curSize] = input[i+2];
  104.                     curSize++;
  105.                     output[curSize] = input[i+3];
  106.                     changes = 1;
  107.                     i+=3;
  108.                 }
  109.                
  110.             }
  111.             if(changes == 0)
  112.             {
  113.                 output[curSize] = input[i];
  114.             }
  115.         }
  116.         i++;
  117.     }
  118.     return strlen(output);
  119. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement