• Log InLog In
  • Register
Liquid`
Team Liquid Liquipedia
EDT 21:00
CEST 03:00
KST 10:00
  • Home
  • Forum
  • Calendar
  • Streams
  • Liquipedia
  • Features
  • Store
  • EPT
  • TL+
  • StarCraft 2
  • Brood War
  • Smash
  • Heroes
  • Counter-Strike
  • Overwatch
  • Liquibet
  • Fantasy StarCraft
  • TLPD
  • StarCraft 2
  • Brood War
  • Blogs
Forum Sidebar
Events/Features
News
Featured News
[ASL22] Ro4 Preview: Mirror Mirror6[ASL22] Ro8 Preview: Within Reach5[ASL22] Ro8 Preview: In A Tizzy11[ASL22] Ro16 Preview: Holy Diver5[ASL22] Ro16 Preview: Rough Waters10
Community News
Rollback Netcode in Brood War705.0.17 Patch Notes - October 7, 202621Weekly Cups Results (Sep 28-Oct 4)0SC4ALL: II SC2 Complete Invited Player Lineup10StarCraft II 5.0.17 PTR Patch Notes (Sept 30, 2026)78
StarCraft 2
General
ESL Pro Tour for SC2 discontinued [Old] StarCraft 3 Reportedly in Development 5.0.17 Patch Notes - October 7, 2026 StarCraft II 5.0.17 PTR Patch Notes (Sept 30, 2026) How do you feel about the mass reverts in the 5.0.17 PTR?
Tourneys
RSL 2026 Offline Finals LCQ Sign-Ups $3,500 WardiTV Not-Summer Championship ScienceCraft (October 24-25) - Live Event Stellar Fest TWO the Moon (Dec 16-20) ISSL (IntoTheTV x SOOP SC2 League): Premier
Strategy
[H] ZvP Mid-Late Game: Stalkers Collossi HT
Custom Maps
[M] (2) Sweltering Sands [M] (2) Frigid Storage
External Content
Mutation # 547 Temple Of Terror Mutation # 546 Catch the Train The PondCast: SC2 News & Results Mutation # 545 And Drops and Rifts
Brood War
General
Rollback Netcode in Brood War BGH Auto Balance -> http://bghmmr.eu/ BW General Discussion Ziemie's Starcraft 1 Prequel Campaign Mineral Boosting (2 workers/patch)
Tourneys
[Megathread] Daily Proleagues [ASL22] Semifinal A [ASL22] Semifinal B [ASL22] Ro8 Day 4
Strategy
Simple Questions, Simple Answers Cliff Jump Revisited (1 in a 1000 strategy) Replay Review Process - What do you do?
Other Games
General Games
Stormgate/Frost Giant Megathread Nintendo Switch Thread General RTS Discussion Thread Warcraft III: The Frozen Throne Total Annihilation Zero
Dota 2
Dota 2 Champions League Season 3 Begins April 25!
League of Legends
[TL LoL EUW IHs] Teemo shall perish
Heroes of the Storm
Heroes of the Storm 2.0
Hearthstone
Deck construction bug
TL Mafia
TL Mafia Community Thread
Community
General
US Politics Mega-thread Things Aren’t Peaceful in Palestine Canadian Politics Mega-thread Russo-Ukrainian War Thread Artificial Intelligence Thread
Fan Clubs
Serral Fan Club
Media & Entertainment
[Manga] One Piece Movie Discussion! Diablo Animated Series on Netflix
Sports
Football (Soccer) Thread TeamLiquid Health and Fitness Initiative For 2023 MLB/Baseball 2023
World Cup 2022
Tech Support
Computer Build, Upgrade & Buying Resource Thread
TL Community
Recent Gifted Posts
Blogs
The Link Between Gaming and …
TrAiDoS
[ASL22] Ro4 Day1 Ticket Giv…
bITt.mAN
38 yo Retired SWE loo…
PurE)Rabbit-SF
Can Bots Beat Pros?? Starcr…
namkraft
[meme] I finally understa…
LUCKY_NOOB
Customize Sidebar...

Website Feedback

Closed Threads



Active: 11687 users

The Big Programming Thread - Page 170

Forum Index > General Forum
Post a Reply
Prev 1 168 169 170 171 172 1032 Next
Thread Rules
1. This is not a "do my homework for me" thread. If you have specific questions, ask, but don't post an assignment or homework problem and expect an exact solution.
2. No recruiting for your cockamamie projects (you won't replace facebook with 3 dudes you found on the internet and $20)
3. If you can't articulate why a language is bad, don't start slinging shit about it. Just remember that nothing is worse than making CSS IE6 compatible.
4. Use [code] tags to format code blocks.
CptCutter
Profile Joined September 2010
United Kingdom370 Posts
September 29 2012 23:43 GMT
#3381
On September 26 2012 08:20 RoyGBiv_13 wrote:
Show nested quote +
On September 26 2012 01:25 jergason wrote:
On September 25 2012 17:05 Morfildur wrote:

C is a great language... but you won't use it in the real world unless you program for microprocessors or on the linux kernel.
C++ is the closest which is more often used and these days mostly used when developing 3D games/engines.
You won't do either until far further into your programming career - if ever.

. . .

Note that i don't mean "Don't learn C".
It's good to know C and how everything works behind the scenes, i really recommend learning it at some point, but it won't really land you any jobs.


This is untrue. Good C programmers earn top dollar. If you are doing software development, pretty much any field can make you lots of money. Pick what is interesting to you and you'll succeed. Don't pick and choose based on how much money you can make off of it.


Can vouch for that C/assembly/occasional machine code is way fun. Learning the complexity of the C language will unveil the mysteries of hardware. Also, <3 money.

Also, +1 for supporting python as a first language. Awesome scripting language that will generate a ton of ideas for programs right out the gate. Starting with languages like java or C, you have to know quite a bit about packages and design in order to do some of the simplest things like read file metadata to make a decision. Starting with a web language is great, but only if that is what you want to do, and its very much a one way street (harder to go down the stack than up).


i did java as my first language and i am yet to come across a need to read metadata of files. but then again i have been strictly on the games programming side and any file editing is something i set up completely myself. also, knowledge is not needed about packages to make an application.
white_horse
Profile Joined July 2010
1019 Posts
September 30 2012 00:38 GMT
#3382
Hey guys I'm working on this problem where the user inputs an amount of money between $0.00 and $19.99, and the program outputs the best way to calculate the change of that amount. So for example, if I put in "$9.94", then the program should output

One $5 bill
4 $1 bills
3 quarters
1 dime
1 nickel
4 pennies

I got this far

float total;
cout << "Input a dollar amount between 0.00 and 19.99 (inclusive): ";
cin >> total;

numTenDollar = static_cast<int>(total)*100 / (10*100);
numFiveDollar = static_cast<int>((total - numTenDollar))*100 / (5*100);
numOneDollar = static_cast<int>((total - numTenDollar - numFiveDollar))*100 / (1*100);

but the program is really weird when I run it and I think theres something wrong with the calculations. Can you guys help me out? Thanks.
Translator
Mr. Wiggles
Profile Blog Joined August 2010
Canada5894 Posts
September 30 2012 00:46 GMT
#3383
Your total is in dollars, but when calculating the remainder after you take out the fives and tens, you minus only the number of them, not the dollar amounts.

It should look like this, I think:

numTenDollar = static_cast<int>(total)*100 / (10*100);
numFiveDollar = static_cast<int>((total - (numTenDollar*10)))*100 / (5*100);
numOneDollar = static_cast<int>((total - (numTenDollar*10) - (numFiveDollar*5)))*100 / (1*100);

I believe that would solve the problem.
you gotta dance
tec27
Profile Blog Joined June 2004
United States3719 Posts
Last Edited: 2012-09-30 00:55:47
September 30 2012 00:54 GMT
#3384
So I think something you may find helpful is to subtract things from the total as you go, that way you don't have to keep doing these long chains of subtraction and multiplication. So for instance something like:
int leftover = total*100;
numTenDollar = leftover / (10*100));
leftover -= numTenDollar * (10*100);
...

Doing it that way would probably limit the amount of issues you'll have.

Another suggestion would be to abstract this more, and create a structure with the different currency denominations and their values (in cents probably). Then you could simply loop through that list and figure the number of each until you had no leftover cents, and then loop through your results to display them. It would probably be a lot less code, and less code means less opportunity for error. You could also then solve the problem much more easily for any arbitrary currency denominations!
Can you jam with the console cowboys in cyberspace?
white_horse
Profile Joined July 2010
1019 Posts
September 30 2012 01:04 GMT
#3385
Ok I did that, but a little differently, thanks. But the change doesn't appear for the coins (dimes, nickels, pennies) when I run it. Here is the rest of the code:

numTenDollar = static_cast<int>(total)*100 / (10*100);
total = total - (numTenDollar*10);
numFiveDollar = static_cast<int>(total)*100 / (5*100);
total = total - (numFiveDollar*5);
numOneDollar = static_cast<int>(total)*100 / (1*100);
total = total - (numOneDollar*1);
numQuarter = static_cast<float>(total)*100 / (0.25*100);
total = total - (numQuarter*0.25);
numDime = static_cast<float>(total)*100 / (0.10*100);
total = total - (numDime*0.10);
numNickel = static_cast<float>(total)*100 / (0.05*100);
total = total - (numNickel*0.05);
numPenny = static_cast<float>(total)*100 / (0.01*100);

what am I doing wrong??? I cant figure it out
Translator
tec27
Profile Blog Joined June 2004
United States3719 Posts
September 30 2012 01:08 GMT
#3386
So you're casting the total to a float for the change, which means that when you do the division its going to do float division, rather than int. What you really want is something like:
numQuarter = static_cast<int>(total)*100 / 25;
total = total - (numQuarter*0.25);


I'd really suggest that you develop a primal urge to never repeat stuff like you're doing in that snippet though; it will make you a much better coder.
Can you jam with the console cowboys in cyberspace?
lolmlg
Profile Joined November 2011
619 Posts
September 30 2012 01:16 GMT
#3387
To solve that problem properly you should really use an entirely different sort of solution. Google the phrase "dynamic programming". You should try to come up with a recursive algorithm that reduces the problem to a base case and then constantly checks partial solutions to determine what the best answer is.
tec27
Profile Blog Joined June 2004
United States3719 Posts
September 30 2012 01:27 GMT
#3388
On September 30 2012 10:16 lolmlg wrote:
To solve that problem properly you should really use an entirely different sort of solution. Google the phrase "dynamic programming". You should try to come up with a recursive algorithm that reduces the problem to a base case and then constantly checks partial solutions to determine what the best answer is.

Well, that too, but I think that's a bit past his depth atm. The assignment is probably meant more to develop the greedy algorithm that fails in some cases, rather than the exact correct solution.
Can you jam with the console cowboys in cyberspace?
Crappy
Profile Joined July 2010
France224 Posts
Last Edited: 2012-09-30 01:35:10
September 30 2012 01:28 GMT
#3389
On September 30 2012 10:04 white_horse wrote:
Ok I did that, but a little differently, thanks. But the change doesn't appear for the coins (dimes, nickels, pennies) when I run it. Here is the rest of the code:

numTenDollar = static_cast<int>(total)*100 / (10*100);
total = total - (numTenDollar*10);
numFiveDollar = static_cast<int>(total)*100 / (5*100);
total = total - (numFiveDollar*5);
numOneDollar = static_cast<int>(total)*100 / (1*100);
total = total - (numOneDollar*1);
numQuarter = static_cast<float>(total)*100 / (0.25*100);
total = total - (numQuarter*0.25);
numDime = static_cast<float>(total)*100 / (0.10*100);
total = total - (numDime*0.10);
numNickel = static_cast<float>(total)*100 / (0.05*100);
total = total - (numNickel*0.05);
numPenny = static_cast<float>(total)*100 / (0.01*100);

what am I doing wrong??? I cant figure it out


Two major mistakes :
- You are badly using variables types, you use a huge mess of cast between floats/ints (this can be tricky sometimes so stay with a clean plan on what type to use)
- You repeat yourself which is bad :p


Take a look at this: (this is fundamentaly different from your code, but it still does the same thing, in the same language)


// 21.23 $
int penny = 2123; // use what ever input you want

char *titles[] = {"10 dollar", "5 dollar", "1 dollar", "quarter", "dime", "penny"};
int units[] = {1000, 500, 100, 25, 10, 1}; // in penny
int i;

for (i = 0; i < sizeof(units) / sizeof(int); i++){
printf("%d * %s\n", penny / units[i], titles[i]);
penny -= penny / units[i] * units[i];
}



Output :
2 * 10 dollar
0 * 5 dollar
1 * 1 dollar
0 * quarter
2 * dime
3 * penny

lolmlg
Profile Joined November 2011
619 Posts
Last Edited: 2012-09-30 01:36:42
September 30 2012 01:33 GMT
#3390
On September 30 2012 10:27 tec27 wrote:
Show nested quote +
On September 30 2012 10:16 lolmlg wrote:
To solve that problem properly you should really use an entirely different sort of solution. Google the phrase "dynamic programming". You should try to come up with a recursive algorithm that reduces the problem to a base case and then constantly checks partial solutions to determine what the best answer is.

Well, that too, but I think that's a bit past his depth atm. The assignment is probably meant more to develop the greedy algorithm that fails in some cases, rather than the exact correct solution.

I could have responded with a simpler solution, but he said that he was looking for "the best" one. If he's taking an introductory class or something of that nature, they probably aren't looking for the most accurate algorithm.

Edit: As it happens, the greedy algorithm can be used as part of the recursive solution.
white_horse
Profile Joined July 2010
1019 Posts
September 30 2012 01:40 GMT
#3391
yeah I'm in an introductory c++ class. I've studied on my own a little bit about arrays and stuff but we're not there yet in the class. I changed all the static_cast<float> to static_cast<int> and the program works for the bills but doesn't work for the coins. I know there must be something wrong with the calculation - can you guy help me find it...........
Translator
Crappy
Profile Joined July 2010
France224 Posts
Last Edited: 2012-09-30 01:53:17
September 30 2012 01:51 GMT
#3392
On September 30 2012 10:40 white_horse wrote:
yeah I'm in an introductory c++ class. I've studied on my own a little bit about arrays and stuff but we're not there yet in the class. I changed all the static_cast<float> to static_cast<int> and the program works for the bills but doesn't work for the coins. I know there must be something wrong with the calculation - can you guy help me find it...........


numPenny = static_cast<int>(total)*100 / (0.01*100);

You are casting "total" into int, which instantly kill floating point informations.
As i said before, BE CAREFULL WITH THE TYPES !

try:
numPenny = static_cast<int>(total / 0.01);

white_horse
Profile Joined July 2010
1019 Posts
Last Edited: 2012-09-30 02:33:30
September 30 2012 02:32 GMT
#3393
I tried out your suggestion and the program is working better, thanks. Could you explain why your suggestion works? In yours, total / 0.01 is still static cast to an int, isn't it.

Also could someone tell me how to write in code format using the bbcode, thanks
Translator
tec27
Profile Blog Joined June 2004
United States3719 Posts
Last Edited: 2012-09-30 05:40:54
September 30 2012 05:39 GMT
#3394
Here, maybe this will help explain it:

int float int float int
numDime = static_cast<int>(1.07) * 100 / (0.10 * 100); =>
int float
numDime = 107 / 10.0 =>
float
numDime = 10.7

int float float
numDime = static_cast<int>(total / 0.10); =>
int
numDime = 10


As you can see, having a float in part of your calculation will cause the ints to be casted to floats as well. So because part of your equation was an uncasted float, the int casted total was changed back to a float, and the result was thus fractional as well.
Can you jam with the console cowboys in cyberspace?
lolmlg
Profile Joined November 2011
619 Posts
Last Edited: 2012-09-30 08:43:14
September 30 2012 08:29 GMT
#3395
That explanation isn't really correct. The problem with the last version of his code was that the call to static_cast took place first. He wanted it to take place last. The line

static_cast<int>(1.07) * 100 / (0.10 * 100);

if it compiles (which it might not, if warnings are treated as errors) will yield the answer 10.0. In that example, all he would need to do in order to get the answer he wanted was surround the entire set of numeric operations with brackets, or use two static_cast calls to avoid the warning.

static_cast<int>(total * 100 / (0.10 * 100));
or
static_cast<int>(total) * 100 / static_cast<int>(0.10 * 100);

But then the question becomes, why bother with the multiplication? The operation can be reduced to the following:

static_cast<int>(total / 0.10);

Edit: Of course, this example didn't really apply to his program, because by the time he hit dimes, the amount of money should have been less than one, in which case the static_cast of total would have returned 0. So both the original line and the line with two static_cast calls would not have worked in his situation. The second line and the final one would be fine.
andiCR
Profile Blog Joined March 2008
Costa Rica2273 Posts
October 01 2012 16:37 GMT
#3396
Well, I have been recently playing with an API called Parse (www.parse.com), and I was amazed when I realized the guys that are working on this are huge SC2 fans!! Check out the example code!! haha so fun :D. If you guys can find any more references let me know :D
https://parse.com/docs/ios_guide

Day[9]
+ Show Spoiler +

PFObject *gameScore = [PFObject objectWithClassName:@"GameScore"];
[gameScore setObject:[NSNumber numberWithInt:1337] forKey:@"score"];
[gameScore setObject:@"Sean Plott" forKey:@"playerName"];
[gameScore setObject:[NSNumber numberWithBool:NO] forKey:@"cheatMode"];
[gameScore save];


Artosis
+ Show Spoiler +

PFQuery *query = [PFQuery queryWithClassName:@"GameScore"];
[query whereKey:@"playerName" equalTo:@"Dan Stemkoski"];
[query findObjectsInBackgroundWithBlock:^(NSArray *objects, NSError *error) {
if (!error) {
// The find succeeded.
NSLog(@"Successfully retrieved %d scores.", objects.count);
} else {
// Log details of the failure
NSLog(@"Error: %@ %@", error, [error userInfo]);
}
}];


Spanishiwa
+ Show Spoiler +

[query whereKey:@"playerName" notEqualTo:@"Michael Yabuti"];


Sheth, TLO, Jinro
+ Show Spoiler +

// Finds scores from anyone who is neither Jonathan, Dario, nor Shawn
NSArray *names = [NSArray arrayWithObjects:@"Jonathan Walsh",
@"Dario Wunsch",
@"Shawn Simon",
nil];
[query whereKey:@"playerName" notContainedIn:names];


Nightmare1795 wrote: I played a guy in bronze who said he was Japanese. That was the only game I ever dropped a nuke, which was purely coincidental.
Crappy
Profile Joined July 2010
France224 Posts
October 01 2012 22:55 GMT
#3397
Nice find :D
white_horse
Profile Joined July 2010
1019 Posts
October 02 2012 03:29 GMT
#3398
On September 30 2012 17:29 lolmlg wrote:
That explanation isn't really correct. The problem with the last version of his code was that the call to static_cast took place first. He wanted it to take place last. The line

static_cast<int>(1.07) * 100 / (0.10 * 100);

if it compiles (which it might not, if warnings are treated as errors) will yield the answer 10.0. In that example, all he would need to do in order to get the answer he wanted was surround the entire set of numeric operations with brackets, or use two static_cast calls to avoid the warning.

static_cast<int>(total * 100 / (0.10 * 100));
or
static_cast<int>(total) * 100 / static_cast<int>(0.10 * 100);

But then the question becomes, why bother with the multiplication? The operation can be reduced to the following:

static_cast<int>(total / 0.10);

Edit: Of course, this example didn't really apply to his program, because by the time he hit dimes, the amount of money should have been less than one, in which case the static_cast of total would have returned 0. So both the original line and the line with two static_cast calls would not have worked in his situation. The second line and the final one would be fine.


OK thank you so much that helped a lot. I have the program basically done now, and there is one problem left:
it works for every input except 19.96, 19.97, 19.98, and 19.99.

For example, 19.96 outputs everything right except at the very end, it doesn't output "One penny" on the screen when it needs to. And then 19.97 outputs only one penny at the end when it needs to output two. Do you know what is wrong with this? The assignment tells us to be careful about inputting 19.99 so it seems like this is a problem that we are supposed to run into.
Translator
lannisport
Profile Joined February 2012
878 Posts
Last Edited: 2012-10-02 06:40:52
October 02 2012 06:29 GMT
#3399
I don't know if any of you guys are familiar with wordpress but I'm trying to use it as a content management system for a website. So my goal is this... To have a "template" with a header and footer in it, and to use wordpress to insert the content of the page inbetween those two. In HTML. It seems simple but I can't figure out how to do this.

Anyone have any suggestions? I just wanna insert plain HTML into wordpress to make the content of a page...

+ Show Spoiler +
<?php /*Template Name:default */ ?>
<?php get_header(); ?> <!-- This gets the header -->

<!-- The container is styled in CSS, so in WordPress I can simply type in the rest of the divs. "div id="section1", "div id="quote" etc. -->
<div id ="container">

<!-- Start the Loop. This is the WP Loop that returns the content the I type in the wordpress box and puts it into the div class "entry" -->
<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
<div class="entry">
<?php the_content(); ?>
</div>

<?php endwhile; else: ?>
<?php endif; ?>
</div>


<?php get_footer(); ?> <!-- This gets the footer -->


Neater version: http://pastie.org/4895074

Currently this script messes up the layout of the page, and even some of the images go missing. However, it's all one CSS file so I don't understand why the layout would mess up (missing images probably a simple path problem).
dae
Profile Joined June 2010
Canada1600 Posts
October 02 2012 06:53 GMT
#3400
On September 30 2012 09:38 white_horse wrote:
Hey guys I'm working on this problem where the user inputs an amount of money between $0.00 and $19.99, and the program outputs the best way to calculate the change of that amount. So for example, if I put in "$9.94", then the program should output

One $5 bill
4 $1 bills
3 quarters
1 dime
1 nickel
4 pennies

I got this far

float total;
cout << "Input a dollar amount between 0.00 and 19.99 (inclusive): ";
cin >> total;

numTenDollar = static_cast<int>(total)*100 / (10*100);
numFiveDollar = static_cast<int>((total - numTenDollar))*100 / (5*100);
numOneDollar = static_cast<int>((total - numTenDollar - numFiveDollar))*100 / (1*100);

but the program is really weird when I run it and I think theres something wrong with the calculations. Can you guys help me out? Thanks.


Wouldn't this problem be very easy to solve by just using a series of while loops, one for each currency denomination?

eg:
while(currentAmount-10>=0)
{
numTenBills++;
currentAmount-=10;
}

You could even print the amounts as you go if you don't want to use a different variable for each denomination.

Prev 1 168 169 170 171 172 1032 Next
Please log in or register to reply.
Live Events Refresh
Replay Cast
08:00
The QMC Showmatch 1
CranKy Ducklings52
OSC
08:00
Masters Cup #151: Group A
davetesta27
Liquipedia
[ Submit Event ]
Live Streams
Refresh
StarCraft: Brood War
Britney 7424
Rain 1775
GuemChi 1237
Artosis 609
Dota 2
NeuroSwarm216
League of Legends
Doublelift5976
Counter-Strike
minikerr19
Super Smash Bros
AZ_Axe130
Other Games
Liquid`RaSZi1901
JimRising 522
C9.Mang0486
Livibee454
Maynarde148
Mew2King39
ArmadaUGS30
Organizations
Other Games
gamesdonequick1151
[ Show 13 non-featured ]
StarCraft 2
• Hupsaiya 135
• CranKy Ducklings SOOP44
• AfreecaTV YouTube
• intothetv
• Kozan
• IndyKCrew
• Migwel
StarCraft: Brood War
• BSLYoutube
• STPLYoutube
• ZZZeroYoutube
Other Games
• imaqtpie1473
• Scarra1203
• Shiphtur660
Upcoming Events
OSC
11h
WardiTV Weekly
1d 10h
PiGosaur Cup
1d 23h
Kung Fu Cup
2 days
The PondCast
3 days
Online Event
4 days
Korean StarCraft League
5 days
Afreeca Starleague
5 days
Rush vs Soulkey
CranKy Ducklings
5 days
BSL Open Qualifier
5 days
[ Show More ]
Sparkling Tuna Cup
6 days
BSL Open Qualifier
6 days
Liquipedia Results

Completed

Acropolis #5 - GSB
Blizzard Classic Cup 2026
Copium Cup

Ongoing

ASL Season 22
Super Anchor Qualifying S3
Acropolis #5
HCC Season 3

Upcoming

Acropolis #5 - GSC
BSL Season 23
SC4ALL II: Brood War
BSL 23: Non-Korean Championship
HSC XXX
Stellar Fest 2: Lunar Cup
SC4ALL II: StarCraft II
Kung Fu Cup 2026 Grand Finals
RSL Offline Finals
TLPD

1. ByuN
2. TY
3. Dark
4. Solar
5. Stats
6. Nerchio
7. sOs
8. soO
9. INnoVation
10. Elazer
1. Rain
2. Flash
3. EffOrt
4. Last
5. Bisu
6. Soulkey
7. Mini
8. Sharp
Sidebar Settings...

Advertising | Privacy Policy | Terms Of Use | Contact Us

Original banner artwork: Jim Warren
The contents of this webpage are copyright © 2026 TLnet. All Rights Reserved.