Advertisement
asqapro

OMGPOPLetterBlox

Sep 8th, 2013
273
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 9.12 KB | None | 0 0
  1. #define WINVER 0x0500
  2. #include <iostream>
  3. #include <windows.h>
  4. #include <sstream>
  5. #include <winable.h>
  6. #include <time.h>
  7. #include <vector>
  8. #include <algorithm>
  9. #include <map>
  10.  
  11. using namespace std;
  12.  
  13. void GenerateKey(int vk, BOOL bExtended) { //Code I found, sends a keypress
  14.  
  15.     KEYBDINPUT  kb = {0};
  16.     INPUT       Input = {0};
  17.  
  18.     /* Generate a "key down" */
  19.     if (bExtended) { kb.dwFlags  = KEYEVENTF_EXTENDEDKEY; }
  20.     kb.wVk  = vk;
  21.     Input.type  = INPUT_KEYBOARD;
  22.     Input.ki  = kb;
  23.     SendInput(1, &Input, sizeof(Input));
  24.  
  25.     Sleep(1);
  26.  
  27.     /* Generate a "key up" */
  28.     ZeroMemory(&kb, sizeof(KEYBDINPUT));
  29.     ZeroMemory(&Input, sizeof(INPUT));
  30.     kb.dwFlags  =  KEYEVENTF_KEYUP;
  31.     if (bExtended) { kb.dwFlags |= KEYEVENTF_EXTENDEDKEY; }
  32.     kb.wVk = vk;
  33.     Input.type = INPUT_KEYBOARD;
  34.     Input.ki = kb;
  35.     SendInput(1, &Input, sizeof(Input));
  36. }
  37.  
  38. int main()
  39. {
  40.     map<string, int> keycodes; //a map matching letters to virtual letters; used in sending keys
  41.     keycodes.insert(make_pair("a", 0x41));
  42.     keycodes.insert(make_pair("b", 0x42));
  43.     keycodes.insert(make_pair("c", 0x43));
  44.     keycodes.insert(make_pair("d", 0x44));
  45.     keycodes.insert(make_pair("e", 0x45));
  46.     keycodes.insert(make_pair("f", 0x46));
  47.     keycodes.insert(make_pair("g", 0x47));
  48.     keycodes.insert(make_pair("h", 0x48));
  49.     keycodes.insert(make_pair("i", 0x49));
  50.     keycodes.insert(make_pair("j", 0x4A));
  51.     keycodes.insert(make_pair("k", 0x4B));
  52.     keycodes.insert(make_pair("l", 0x4C));
  53.     keycodes.insert(make_pair("m", 0x4D));
  54.     keycodes.insert(make_pair("n", 0x4E));
  55.     keycodes.insert(make_pair("o", 0x4F));
  56.     keycodes.insert(make_pair("p", 0x50));
  57.     keycodes.insert(make_pair("q", 0x51));
  58.     keycodes.insert(make_pair("r", 0x52));
  59.     keycodes.insert(make_pair("s", 0x53));
  60.     keycodes.insert(make_pair("t", 0x54));
  61.     keycodes.insert(make_pair("u", 0x55));
  62.     keycodes.insert(make_pair("v", 0x56));
  63.     keycodes.insert(make_pair("w", 0x57));
  64.     keycodes.insert(make_pair("x", 0x58));
  65.     keycodes.insert(make_pair("y", 0x59));
  66.     keycodes.insert(make_pair("z", 0x5A));
  67.  
  68.     vector<string> used_words; //list of words already found
  69.     vector<string> letters; //letters to use; entered by user
  70.     string word; //collection of random letters; used to check if the word is original
  71.     srand(time(NULL));
  72.     string first; //first letter
  73.     string second; //etc
  74.     string third;
  75.     string fourth;
  76.     string fifth;
  77.     string sixth;
  78.     cout << "Enter your first letter: ";
  79.     cin >> first;
  80.     cout << "Enter your second letter: ";
  81.     cin >> second;
  82.     cout << "Enter your third letter: ";
  83.     cin >> third;
  84.     cout << "Enter your fourth letter: ";
  85.     cin >> fourth;
  86.     cout << "Enter your fifth letter: ";
  87.     cin >> fifth;
  88.     cout << "Enter your sixth letter: ";
  89.     cin >> sixth;
  90.     letters.push_back(first);
  91.     letters.push_back(second);
  92.     letters.push_back(third);
  93.     letters.push_back(fourth);
  94.     letters.push_back(fifth);
  95.     letters.push_back(sixth);
  96.     int firstInt; //first random letter
  97.     int secondInt; //etc
  98.     int thirdInt;
  99.     int fourthInt;
  100.     int fifthInt;
  101.     int sixthInt;
  102.     Sleep(4000); //so the user can tab into the game
  103.     //1! * 6
  104.     for(int iter = 0; iter < 6; iter++){
  105.         int firstInt = rand() % 6 + 0; //get a random letter
  106.         word += letters[firstInt]; //add it to the word
  107.         if(find(used_words.begin(), used_words.end(), word) == used_words.end()){ //if not found in used_words, enter it
  108.             GenerateKey(keycodes.find(letters[firstInt])->second, TRUE);
  109.             Sleep(1);
  110.             GenerateKey(VK_RETURN, TRUE); //send it
  111.             Sleep(1);
  112.             used_words.push_back(word); //add it to used_words
  113.         }
  114.         else{ //else, make a new word
  115.             continue;
  116.         }
  117.     }
  118.     Sleep(100);
  119.     //2! * 6
  120.     for(int iter = 0; iter < 12; iter++){
  121.         int firstInt = rand() % 6 + 0;
  122.         int secondInt = rand() % 6 + 0;
  123.         word += letters[firstInt];
  124.         word += letters[secondInt];
  125.         if(find(used_words.begin(), used_words.end(), word) == used_words.end()){ //if not found, enter it
  126.             GenerateKey(keycodes.find(letters[firstInt])->second, TRUE);
  127.             Sleep(1);
  128.             GenerateKey(keycodes.find(letters[secondInt])->second, TRUE);
  129.             Sleep(1);
  130.             GenerateKey(VK_RETURN, TRUE);
  131.             Sleep(1);
  132.             used_words.push_back(word);
  133.         }
  134.         else{ //else, make a new word
  135.             continue;
  136.         }
  137.     }
  138.     Sleep(100);
  139.     //3! * 6
  140.     for(int iter = 0; iter < 36; iter++){
  141.         int firstInt = rand() % 6 + 0;
  142.         int secondInt = rand() % 6 + 0;
  143.         int thirdInt = rand() % 6 + 0;
  144.         word += letters[firstInt];
  145.         word += letters[secondInt];
  146.         word += letters[thirdInt];
  147.         if(find(used_words.begin(), used_words.end(), word) == used_words.end()){ //if not found, enter it
  148.             GenerateKey(keycodes.find(letters[firstInt])->second, TRUE);
  149.             Sleep(1);
  150.             GenerateKey(keycodes.find(letters[secondInt])->second, TRUE);
  151.             Sleep(1);
  152.             GenerateKey(keycodes.find(letters[thirdInt])->second, TRUE);
  153.             Sleep(100);
  154.             GenerateKey(VK_RETURN, TRUE);
  155.             Sleep(1);
  156.             used_words.push_back(word);
  157.         }
  158.         else{ //else, make a new word
  159.             continue;
  160.         }
  161.     }
  162.     Sleep(100);
  163.     //4! * 6
  164.     for(int iter = 0; iter < 144; iter++){
  165.         int firstInt = rand() % 6 + 0;
  166.         int secondInt = rand() % 6 + 0;
  167.         int thirdInt = rand() % 6 + 0;
  168.         int fourthInt = rand() % 6 + 0;
  169.         word += letters[firstInt];
  170.         word += letters[secondInt];
  171.         word += letters[thirdInt];
  172.         word += letters[fourthInt];
  173.         if(find(used_words.begin(), used_words.end(), word) == used_words.end()){ //if not found, enter it
  174.             GenerateKey(keycodes.find(letters[firstInt])->second, TRUE);
  175.             Sleep(1);
  176.             GenerateKey(keycodes.find(letters[secondInt])->second, TRUE);
  177.             Sleep(1);
  178.             GenerateKey(keycodes.find(letters[thirdInt])->second, TRUE);
  179.             Sleep(1);
  180.             GenerateKey(keycodes.find(letters[fourthInt])->second, TRUE);
  181.             Sleep(100);
  182.             GenerateKey(VK_RETURN, TRUE);
  183.             Sleep(1);
  184.             used_words.push_back(word);
  185.         }
  186.         else{ //else, make a new word
  187.             continue;
  188.         }
  189.     }
  190.     Sleep(100);
  191.     //5! * 6
  192.     for(int iter = 0; iter < 720; iter++){
  193.         int firstInt = rand() % 6 + 0;
  194.         int secondInt = rand() % 6 + 0;
  195.         int thirdInt = rand() % 6 + 0;
  196.         int fourthInt = rand() % 6 + 0;
  197.         int fifthInt = rand() % 6 + 0;
  198.         word += letters[firstInt];
  199.         word += letters[secondInt];
  200.         word += letters[thirdInt];
  201.         word += letters[fourthInt];
  202.         word += letters[fifthInt];
  203.         if(find(used_words.begin(), used_words.end(), word) == used_words.end()){ //if not found, enter it
  204.             GenerateKey(keycodes.find(letters[firstInt])->second, TRUE);
  205.             Sleep(1);
  206.             GenerateKey(keycodes.find(letters[secondInt])->second, TRUE);
  207.             Sleep(1);
  208.             GenerateKey(keycodes.find(letters[thirdInt])->second, TRUE);
  209.             Sleep(1);
  210.             GenerateKey(keycodes.find(letters[fourthInt])->second, TRUE);
  211.             Sleep(1);
  212.             GenerateKey(keycodes.find(letters[fifthInt])->second, TRUE);
  213.             Sleep(100);
  214.             GenerateKey(VK_RETURN, TRUE);
  215.             Sleep(1);
  216.             used_words.push_back(word);
  217.         }
  218.         else{ //else, make a new word
  219.             continue;
  220.         }
  221.     }
  222.     Sleep(100);
  223.     //6! * 6
  224.     for(int iter = 0; iter < 4320; iter++){
  225.         int firstInt = rand() % 6 + 0;
  226.         int secondInt = rand() % 6 + 0;
  227.         int thirdInt = rand() % 6 + 0;
  228.         int fourthInt = rand() % 6 + 0;
  229.         int fifthInt = rand() % 6 + 0;
  230.         int sixthInt = rand() % 6 + 0;
  231.         word += letters[firstInt];
  232.         word += letters[secondInt];
  233.         word += letters[thirdInt];
  234.         word += letters[fourthInt];
  235.         word += letters[fifthInt];
  236.         word += letters[sixthInt];
  237.         if(find(used_words.begin(), used_words.end(), word) == used_words.end()){ //if not found, enter it
  238.             GenerateKey(keycodes.find(letters[firstInt])->second, TRUE);
  239.             Sleep(1);
  240.             GenerateKey(keycodes.find(letters[secondInt])->second, TRUE);
  241.             Sleep(1);
  242.             GenerateKey(keycodes.find(letters[thirdInt])->second, TRUE);
  243.             Sleep(1);
  244.             GenerateKey(keycodes.find(letters[fourthInt])->second, TRUE);
  245.             Sleep(1);
  246.             GenerateKey(keycodes.find(letters[fifthInt])->second, TRUE);
  247.             Sleep(1);
  248.             GenerateKey(keycodes.find(letters[sixthInt])->second, TRUE);
  249.             Sleep(100);
  250.             GenerateKey(VK_RETURN, TRUE);
  251.             Sleep(1);
  252.             used_words.push_back(word);
  253.         }
  254.         else{ //else, make a new word
  255.             continue;
  256.         }
  257.     }
  258.     return 0;
  259. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement