Today I learned a pretty cool function in C++. Unfortunately, this cool function isn't as awesome as it could be as it isn't cross-platform.
The function is the the "sleep function". To use it, you simply type "Sleep()" (capitalization is important) along with a number in between the paranthesis. The number between the parenthsis determines how long the code "sleeps" before it begins again.
I used this function in WEP Cracking: The Game to better simulate downloading a copy of BackTrack Linux. Here's some example code:
getline (cin, cInstall);
if((cInstall == "download") || (cInstall == "DOWNLOAD") || (cInstall == "Download"))
{
cout << "Beginning download" << endl;
cout << "1 2 3 4 5" << endl;
Sleep(150);
cout << "6 7 8 9 10" << endl;
Sleep(150);
cout << "11 12 13 14 15" << endl;
Sleep(150);
cout << "16 17 18 19 20" << endl;
Sleep(150);
cout << "21 22 23 24 25" << endl;
Sleep(150);
cout << "26 27 28 29 30" << endl;
Sleep(150);
cout << "31 32 33 34 35" << endl;
Sleep(150);
cout << "36 37 38 39 40" << endl;
Sleep(150);
cout << "41 42 43 44 45" << endl;
Sleep(150);
cout << "46 47 48 49 50" << endl;
Sleep(150);
cout << "51 52 53 54 55" << endl;
Sleep(150);
cout << "56 57 58 59 60" << endl;
Sleep(150);
cout << "61 62 63 64 65" << endl;
Sleep(150);
cout << "66 67 68 69 70" << endl;
Sleep(150);
cout << "71 72 73 74 75" << endl;
Sleep(150);
cout << "76 77 78 79 80" << endl;
Sleep(150);
cout << "81 82 83 84 85" << endl;
Sleep(150);
cout << "86 87 88 89 90" << endl;
Sleep(150);
cout << "91 92 93 94 95" << endl;
Sleep(150);
cout << "96 97 98 99" << endl;
Sleep(150);
cout << "100%" << endl;
Sleep(150);
cout << "Download complete." << endl;
Now for the bad...
This function requires the windows header file, which means it is not cross-platform. This is enough for me to NOT use it in the final product. I have it in there now because I was learning about it, but before I'm finished, I'll be swapping it with a cross-platform alternative.
It really sucks because "Sleep()" is quick, easy, and fills a specific need. Hopefully the alternative I find is just as easy.
15 comments:
it's a pity that it's not cross-platform :(
atleast you're thinking about everyone when you made the game
too bad it's not cross platform.
What alternative methods would be available(cross platform, or not)?
And the painful fact of life in that what is easy and nice doesn't work for what you want to do. Bleh.
uhm, interesting.. i have the "sleep function" in my brain constantly..ahah xD
good progress!
This is great!
Have a SUPER weekend !
Good stuff bro!
How can I program with C++ on a mac?
Aww shame, wish I had a clue so I could help you!
Ugh, my head hurts.. I need to learn this
i started learning C, its really really fun.
after i learn C i think i'll take up C++
@Admin,
Eclipse or xcode.
Functions and looping are helpful.
something like this may be less work:
for(int i = 0; i < 100; i++){
cout << i << "%\n";
Sleep(150);
}
really specific, but good job making a story about programming i completely read
Post a Comment