Quantcast

Maximum PC

It is currently Fri Sep 19, 2014 5:00 pm

All times are UTC - 8 hours




Post new topic Reply to topic  [ 64 posts ]  Go to page Previous  1, 2, 3, 4  Next
Author Message
 Post subject:
PostPosted: Mon Aug 16, 2004 10:52 am 
I'd rather be modding!
I'd rather be modding!
User avatar

Joined: Fri Jun 25, 2004 3:47 pm
Posts: 3731
Location: Las Vegas
Wolfmann wrote:
Derek § wrote:
Wow! You guys are getting out of control! lol. I've just taken VB 6 at High School last year, so I'm not by any means an experienced programmer.

In VB.NET, if I'm not mistaken, randomize is already supposed to be based on the system clock.


Don't worry...this is how the guys in the lab coats with the pocket protector's that are relegated to working in cubicles with headphones compare cock size...you'll be there one day too. heh,heh. ;-)



Heheh -

Don't scare him :)

Manta


Top
  Profile  
 
 Post subject:
PostPosted: Mon Aug 16, 2004 11:09 am 
Bitchin' Fast 3D Z8000
Bitchin' Fast 3D Z8000
User avatar

Joined: Sat Jun 26, 2004 3:44 pm
Posts: 513
Location: Vancouver Island
MantaBase wrote:
Derek § wrote:
Wow! You guys are getting out of control! lol. I've just taken VB 6 at High School last year, so I'm not by any means an experienced programmer.

In VB.NET, if I'm not mistaken, randomize is already supposed to be based on the system clock.


Thats probably true - but because you are calling the numbers in a cyclical fasion they are not as random as they could be. If you check the closk based on a users input as well, its a bit more random. I wouldn't worry to much about it for what you are doing.

In some languages, you can use the random function to shuffle a list. In python its something like Card[1] = random.shuffle("list of cards") (don't trust my syntax).

In a sense, the "list of cards" is your deck of cards. Card[1] (actually, its 0 not 1) is the card on the top of the deck. If VB has that, its a better way to go IMO. You might look at the random function docs a bit closer for VB. Maybe you can't do it - but if you can it will save you a bit of time and look much nicer :)

Manta


In the languages here, the Random class is instantiated as it's own object. You would then assign the value of that Random within your own logic to shuffle the deck. There's no get out of jail free card, but simply the power and flexibility of creating your own class and method within that class that would evoke a randomized shuffle.

Example would be be to call upon the System.Random within your own class, then when you call your own class in your program you could theoretically have something as easy as

DeckOfCards blackjack = new DeckOfCards() //instantiates a new deck of cards

blackjack.Shuffle() //shuffles the deck


That's overly simplified and incomplete as I do not show the class, or the rest of the code, but that's how you could get the simplicity you're talking about. This is the power of OOP. Takes a little bit extra work, but in the long run you're not creating redundant codes, or functions,


Top
  Profile  
 
 Post subject:
PostPosted: Mon Aug 16, 2004 1:11 pm 
Bitchin' Fast 3D Z8000*
Bitchin' Fast 3D Z8000*
User avatar

Joined: Tue Jun 29, 2004 11:32 pm
Posts: 2555
Location: Somewhere between compilation and linking
MantaBase wrote:
Ok I see the 1690 part and the 12.999999 result.

Does VB not have something like random.shuffle(list) ??

That would seem easier to me. just shuffle the deck(s) and move through an index each time a card is played

look at the while loop I used at the end of my cheese program.

Manta

A full OOP implementation with a 'shoe', 'deck', 'card', 'player' and 'dealer' class is really the way to go, but we're talking about vb programmers that tend to be very confused by OOP in my experience (take a look at infinite loops). Very unsure of when and why to use composition or inheritance, have no idea what polymorphism is, why abstraction is important, etc.

VB.NET probably has something to shuffle ADT's. Very similiar to Java and probably in something called a Collections class.

Collections.shuffle(deck); //java


Top
  Profile  
 
 Post subject:
PostPosted: Mon Aug 16, 2004 1:13 pm 
Bitchin' Fast 3D Z8000*
Bitchin' Fast 3D Z8000*
User avatar

Joined: Tue Jun 29, 2004 11:32 pm
Posts: 2555
Location: Somewhere between compilation and linking
Wolfmann wrote:
Derek § wrote:
Wow! You guys are getting out of control! lol. I've just taken VB 6 at High School last year, so I'm not by any means an experienced programmer.

In VB.NET, if I'm not mistaken, randomize is already supposed to be based on the system clock.


Don't worry...this is how the guys in the lab coats with the pocket protector's that are relegated to working in cubicles with headphones compare cock size...you'll be there one day too. heh,heh. ;-)

haha... :)

Semi-continuing our other discussion. Python also has both a String and StringBuffer - one for immutable data and the other for mutable data. There might be some documentation at the python.org site explaining why they chose this design.


Top
  Profile  
 
 Post subject:
PostPosted: Tue Aug 17, 2004 11:34 am 
I'd rather be modding!
I'd rather be modding!
User avatar

Joined: Fri Jun 25, 2004 3:47 pm
Posts: 3731
Location: Las Vegas
Wolfmann wrote:
MantaBase wrote:
Derek § wrote:
Wow! You guys are getting out of control! lol. I've just taken VB 6 at High School last year, so I'm not by any means an experienced programmer.

In VB.NET, if I'm not mistaken, randomize is already supposed to be based on the system clock.


Thats probably true - but because you are calling the numbers in a cyclical fasion they are not as random as they could be. If you check the closk based on a users input as well, its a bit more random. I wouldn't worry to much about it for what you are doing.

In some languages, you can use the random function to shuffle a list. In python its something like Card[1] = random.shuffle("list of cards") (don't trust my syntax).

In a sense, the "list of cards" is your deck of cards. Card[1] (actually, its 0 not 1) is the card on the top of the deck. If VB has that, its a better way to go IMO. You might look at the random function docs a bit closer for VB. Maybe you can't do it - but if you can it will save you a bit of time and look much nicer :)

Manta


In the languages here, the Random class is instantiated as it's own object. You would then assign the value of that Random within your own logic to shuffle the deck. There's no get out of jail free card, but simply the power and flexibility of creating your own class and method within that class that would evoke a randomized shuffle.

Example would be be to call upon the System.Random within your own class, then when you call your own class in your program you could theoretically have something as easy as

DeckOfCards blackjack = new DeckOfCards() //instantiates a new deck of cards

blackjack.Shuffle() //shuffles the deck


That's overly simplified and incomplete as I do not show the class, or the rest of the code, but that's how you could get the simplicity you're talking about. This is the power of OOP. Takes a little bit extra work, but in the long run you're not creating redundant codes, or functions,


You could do the same in Python, but why when you have all this?
Code:
>>> dir(random)
['BPF', 'LOG4', 'NV_MAGICCONST', 'Random', 'SG_MAGICCONST', 'TWOPI', 'WichmannHill', '_BuiltinMethodType', '__all__', '__builtins__', '__doc__', '__file__', '__name__', '_acos', '_cos', '_e', '_exp', '_floor', '_inst', '_log', '_pi', '_random', '_sin', '_sqrt', '_test', '_test_generator', 'betavariate', 'choice', 'cunifvariate', 'expovariate', 'gammavariate', 'gauss', 'getstate', 'jumpahead', 'lognormvariate', 'normalvariate', 'paretovariate', 'randint', 'random', 'randrange', 'sample', 'seed', 'setstate', 'shuffle', 'stdgamma', 'uniform', 'vonmisesvariate', 'weibullvariate']


I was wondering if VB had any of the same built in functionallity. If its there, why not use it.

Here:
Code:
#five card stud no flush or straight
import random
Deck = ["Ace",2,3,4,5,6,7,8,9,10,"Jack","Queen","King"]
Card = 0
while Card < 5: #deal the cards
    print random.choice(Deck)
    Card += 1


Thats not part of a program - its the entire thing - it deals 5 random cards.

So if VB has this functionality (or any OOP capable language), is there a reason you would want to avoid it?

Manta


Top
  Profile  
 
 Post subject:
PostPosted: Tue Aug 17, 2004 11:44 am 
Bitchin' Fast 3D Z8000
Bitchin' Fast 3D Z8000
User avatar

Joined: Sat Jun 26, 2004 3:44 pm
Posts: 513
Location: Vancouver Island
I take it Random is a customized namespace and class, and choice is a method within the class?


Top
  Profile  
 
 Post subject:
PostPosted: Tue Aug 17, 2004 12:21 pm 
I'd rather be modding!
I'd rather be modding!
User avatar

Joined: Fri Jun 25, 2004 3:47 pm
Posts: 3731
Location: Las Vegas
Wolfmann wrote:
I take it Random is a customized namespace and class, and choice is a method within the class?


Well, I r noob - But I will try: I have it stated two different way in the same text:

random is a built-in object and choice is an attribute of random.

or

random is a built in module and choice is a function in that module.

Basically, I think you are right (except for the customized part) but the python texts reserve the words "class" and "method" for - well "class" and "method" in the C/C++ sense. I think because you can't customize built in objects.

Did that make sence? I am still learning.

here is how I see it, so tell me if I am wrong:

random (or any built in object) can be called a module because in python it can be treated as one. Yet, modules are a little different - basically they are sub programs. So they call thing like "random" objects with attributes. You could call them classes with methods, but that would imply they can be customized - and they cannot. They are built in. That makes them different from both modules and classes.

You see why folks get confused (myself included)?

Anyways, I have read that they are best to use when availiable and have the right attribute.

I am still half way through two python intro books - so keep that in mind. I am not really comfortable talking about OOP yet except in the broadest of terms.

Manta


Top
  Profile  
 
 Post subject:
PostPosted: Tue Aug 17, 2004 3:01 pm 
Bitchin' Fast 3D Z8000*
Bitchin' Fast 3D Z8000*
User avatar

Joined: Tue Jun 29, 2004 11:32 pm
Posts: 2555
Location: Somewhere between compilation and linking
You're both so damn confusing! :)

Manta, in case you didn't catch it before, what Wolf was saying before is....

In general, an OOP language is well suited to modeling real world objects. By taking a little extra time up front, you can create a class hierarchy with a higher degree of abstraction and modularity that is both easier to use and reuse. Not that you shouldn't use Random or shuffle or whatever, just that you should use them from within an OOP design (for this program, which is well suited for OOA/D).


Wolf... regarding the way Manta used random. It looks to me like random might be a static class with static methods, hence, no need to instantiate anything. Just going on good design principles, it should have a seperate namespace and I would bet that it does (Manta, trying doing a print choice(Deck) which should give a 'wtf is choice' error). I also suspect that modules are pretty close to the equivalent of packages in Java - kind of a guess, but it looks that way.


Top
  Profile  
 
 Post subject:
PostPosted: Tue Aug 17, 2004 4:12 pm 
I'd rather be modding!
I'd rather be modding!
User avatar

Joined: Fri Jun 25, 2004 3:47 pm
Posts: 3731
Location: Las Vegas
Gadget wrote:
You're both so damn confusing! :)

Wolf... regarding the way Manta used random. It looks to me like random might be a static class with static methods, hence, no need to instantiate anything. Just going on good design principles, it should have a seperate namespace and I would bet that it does (Manta, trying doing a print choice(Deck) which should give a 'wtf is choice' error). I also suspect that modules are pretty close to the equivalent of packages in Java - kind of a guess, but it looks that way.


"print choice(Deck) which should give a 'wtf is choice' error"

Yes - of course it does. Without "random" in front choice is an attribute with no object. I didn't actually do it, but thats what would happen - "choice is not defined blahblah" Is that the same as saying its not a "global namespace"?

"It looks to me like random might be a static class with static methods, hence, no need to instantiate anything. "

Yes - a very good way to say it. How come the texts don't say that?

Do Java and C++ have Modules? Please describe or give a definition to me for that.

Manta


Top
  Profile  
 
 Post subject:
PostPosted: Tue Aug 17, 2004 5:23 pm 
Bitchin' Fast 3D Z8000*
Bitchin' Fast 3D Z8000*
User avatar

Joined: Tue Jun 29, 2004 11:32 pm
Posts: 2555
Location: Somewhere between compilation and linking
MantaBase wrote:
Yes - of course it does. Without "random" in front choice is an attribute with no object. I didn't actually do it, but thats what would happen - "choice is not defined blahblah" Is that the same as saying its not a "global namespace"?

I'd have to consult a reference book to be 100% sure. I'm not certain how a pure object oriented language treats namespaces compared to a procedural language (ie, C++ is both procedural and OOP - I need to do a review :)).

For example, In C++ you explicitly state your namespaces - in 99% of cases students do this by adding a line 'using namespace std;' (std = standard) near the top of their file, which is frowned upon with most real projects. By doing this they don't have to put the namespace std in front of functions defined in std.

cout << "hello" << endl; //prints hello

versus

std::cout << "hello" << std::endl; //prints hello

Now say you have a special cout function that prints ascii numbers instead of the letters to the console. You can define a namespace in your file called Manta and do this....

Manta::cout << "hello" << std::endl; //prints 90 88 96 96 99 (just guessing the ascii values)

In practice, namespaces are used in procedural languages to avoid name clashes. When a project gets large enough, you start running out of good descriptive variable names, so it is better to create seperate namespaces and reuse these descriptive names instead of resorting to complicated naming gyrations.


Mantabase wrote:
"It looks to me like random might be a static class with static methods, hence, no need to instantiate anything. "

Yes - a very good way to say it. How come the texts don't say that?

Got me - maybe I should write a book. :)

This is just what I think is happening... I'd have to consult python.org to be sure.

Mantabase wrote:
Do Java and C++ have Modules? Please describe or give a definition to me for that.

No. Java has the following....

packages - groups of related classes form a package.
example: javax.swing is the package for the swing classes
example: java.lang contains the core classes of the Java language

classes - you know what these are....
example: java.lang.Math
Math is a class containing fields and methods related to math
example: javax.swing.JButton
JButton is a class for instantiating a button in swing

And you can create your own packages.... there are a few rules for doing this.

In C++, which supports both procedural and OOP, the main library is called the STL - standard template library, which uses the namespace std like I showed you above. Instead of using a package, C++ has a keyword called friend - imo, friends are the most unfriendly thing I've seen in any language and I much prefer Java's use of packages.

My language class didn't cover Python - C++, Java, Ada, LISP, Fortran, Prolog, Cobol and some others - here is what one of the tutorials says...

Quote:
You can use a module to organize a number of Python definitions in a single file. <snip> A package is a way to organize a number of modules together as a unit. Python packages can also contain other packages.


So Python has both modules and packages where it looks like a module is a related to group of classes and functions, and a package is a related group of modules and other packages. Here is a link that I think will explain it in detail.... I plan on reading it later tonight.

http://www.python.org/doc/essays/packages.html


Top
  Profile  
 
 Post subject:
PostPosted: Tue Aug 17, 2004 9:31 pm 
8086
8086

Joined: Mon Jul 26, 2004 8:40 am
Posts: 55
Location: Illinois, in the U.S. of A.
Well guys, I ran into a new snag. The terrible thing abou this one is that it is an inconsistent problem, making debugging a real byatch. Here's my new prob:

lblP1Funds.Text starts out as "5000". Lets say P1 losses (they go over 21 or something). I have it so an InputBox collects the wager amount from the user. That is stored in General Declarations. Let's say they wagered 100. Well, sometimes, it won't subtract 100 from 5000, but will instead put 100 on the end of 5000, like "5000100". Does any1 know why it does this sometimes?

The code goes something like this:

a = lblP1Funds.Text
If (Player 1 Losses) Then
b = a - Wager
lblP1Funds.Text = b

Why does it do that? Should I have instead:

a = Val(lblP1Funds.Text)
....
???


Top
  Profile  
 
 Post subject:
PostPosted: Tue Aug 17, 2004 10:32 pm 
Bitchin' Fast 3D Z8000
Bitchin' Fast 3D Z8000
User avatar

Joined: Sat Jun 26, 2004 3:44 pm
Posts: 513
Location: Vancouver Island
Gadget wrote:
You're both so damn confusing! :)

Wolf... regarding the way Manta used random. It looks to me like random might be a static class with static methods, hence, no need to instantiate anything. Just going on good design principles, it should have a seperate namespace and I would bet that it does (Manta, trying doing a print choice(Deck) which should give a 'wtf is choice' error). I also suspect that modules are pretty close to the equivalent of packages in Java - kind of a guess, but it looks that way.



Wouldn't it be great to have an intelligent language that just knew what you wanted to do no matter what you typed...heh,heh.

I'm not familiar with Python at all, what can it do?


Top
  Profile  
 
 Post subject:
PostPosted: Wed Aug 18, 2004 1:04 am 
Bitchin' Fast 3D Z8000*
Bitchin' Fast 3D Z8000*
User avatar

Joined: Tue Jun 29, 2004 11:32 pm
Posts: 2555
Location: Somewhere between compilation and linking
Wolfmann wrote:
I'm not familiar with Python at all, what can it do?


I consider it a very impressive language - what basic should have been.

Dynamic data types, interpreted (normally), very good library, useful in a number of situations. I would say Python's three biggest commercial uses are parsing and prepping data (Google uses it for this), game ai scripting, and small to medium sized applications (cgi-bin and the zope application server(?) are also pretty popular too - nothing like php, but enough of them to make a living... perhaps).

It has a stack built-in! You don't declare it or anything, just....

Code:
push(10)      #int
push(3.14)    #float
push(tree)    #object
push("tree")  #string literal
pop()         #returns "tree"


Pretty cool, huh? :)

String manipulation is cool too. The syntax is sort of like arrays in the C-style languages....

Code:
s = "house"
print s      #house
print s[:]   #house
print s[0]   #h
print s[2:2] #ho
print s[:2]  #ho
print s[2:]  #use
print s[-1]  #e
print s[-2]  #s


They use a function (or class?) called 'pickle' to serialize object streams. A very interesting and well-designed language.


Top
  Profile  
 
 Post subject:
PostPosted: Wed Aug 18, 2004 1:14 am 
Bitchin' Fast 3D Z8000*
Bitchin' Fast 3D Z8000*
User avatar

Joined: Tue Jun 29, 2004 11:32 pm
Posts: 2555
Location: Somewhere between compilation and linking
Quote:
Why does it do that? Should I have instead:
a = Val(lblP1Funds.Text)


I don't think it would hurt...

a = lblP1Funds.Text
VB is dynamically typed, so I think a = "5000" (a string) at this point

b = a - Wager
I would expect this behavour: a = 5000 (int) so b = 4900 (int)
but it might be doing this... "5000" - "100" and for some reason appending the 100 instead of converting to ints

Another possibility is that b is being set to the value of the wager and that is being appnded to the file contents..

I don't know jack diddly about VB, so those are just my guesses....


Top
  Profile  
 
 Post subject:
PostPosted: Wed Aug 18, 2004 5:33 am 
I'd rather be modding!
I'd rather be modding!
User avatar

Joined: Fri Jun 25, 2004 3:47 pm
Posts: 3731
Location: Las Vegas
Gadget wrote:
Quote:
Why does it do that? Should I have instead:
a = Val(lblP1Funds.Text)


I don't think it would hurt...

a = lblP1Funds.Text
VB is dynamically typed, so I think a = "5000" (a string) at this point

b = a - Wager
I would expect this behavour: a = 5000 (int) so b = 4900 (int)
but it might be doing this... "5000" - "100" and for some reason appending the 100 instead of converting to ints

Another possibility is that b is being set to the value of the wager and that is being appnded to the file contents..

I don't know jack diddly about VB, so those are just my guesses....


As far as dynamically typed goes, if it were python,:

a="5000"
b=100

a+b would yield 5000100, not 5100 (output is a string)

a=1.1
b=2

a+b you yield 3.1 not 3

I suspect VB is the same - but I don't know

Manta


Top
  Profile  
 
 Post subject:
PostPosted: Wed Aug 18, 2004 2:11 pm 
Bitchin' Fast 3D Z8000*
Bitchin' Fast 3D Z8000*
User avatar

Joined: Tue Jun 29, 2004 11:32 pm
Posts: 2555
Location: Somewhere between compilation and linking
MantaBase wrote:
a+b would yield 5000100, not 5100 (output is a string)

That is the behavior that I would expect in a dynamic language, but I don't know about VB, and I suppose the rules could be different.

What would "5000" - "100" do in Python? My hunch is "5000", it would look for the substring "100" and try to remove any occurance of it from "5000".

OMG... friggin war around here today! Things are crazy.... admins' heads are going to roll.


Top
  Profile  
 
 Post subject:
PostPosted: Wed Aug 18, 2004 2:31 pm 
Bitchin' Fast 3D Z8000
Bitchin' Fast 3D Z8000
User avatar

Joined: Mon Jun 14, 2004 4:04 pm
Posts: 985
Location: Earth
MantaBase wrote:
As far as dynamically typed goes, if it were python,:

a="5000"
b=100

a+b would yield 5000100, not 5100 (output is a string)

a=1.1
b=2

a+b you yield 3.1 not 3

I suspect VB is the same - but I don't know

Manta


Actually, VB will cast the types so that they match. For example:

Dim a As String
Dim b As Integer

a = "5000"
b = 100

Console.Write( a + b )
//output is 5100

C# is different, it's strongly typed, hence:

string a = "5000";
int b = 100;

Console.Write( a + b );

//output is 5000100

The weird thing is that VB.NET casts the string into an integer and performs the addition. Casting rules in VB are vastly different compared to C#, in fact, I ran these tests before I typed this post and I was totally taken. For example:

In VB: string + (int|double) = (int|float|long|double), the string is casted into the second operands type and the arithmetic operation is performed.

int + double = double

in C#:

string + (int|double) = string (the second operand is casted to a string type)

int + double = double


Top
  Profile  
 
 Post subject:
PostPosted: Wed Aug 18, 2004 9:33 pm 
Bitchin' Fast 3D Z8000*
Bitchin' Fast 3D Z8000*
User avatar

Joined: Tue Jun 29, 2004 11:32 pm
Posts: 2555
Location: Somewhere between compilation and linking
DJSPIN80 wrote:
C# is different, it's strongly typed, hence:

string a = "5000";
int b = 100;

Console.Write( a + b );

//output is 5000100


Not sure if you caught this, but that isn't a caste. You're just outputing a followed by b. Because it is strongly typed you couldn't do something like a + b; in your example.

What I am wondering is if the caste direction is being determined contextually....

a = 1
b = "20"
c = 0
c = a + b #c = 21
c = "0"
c = a + b #c = "21"

This is the problem with programming forums - you allow Virus Basic into the forum and pretty soon 90% of your time is spent dealing questions from that damn language!


Top
  Profile  
 
 Post subject:
PostPosted: Wed Aug 18, 2004 10:27 pm 
Bitchin' Fast 3D Z8000
Bitchin' Fast 3D Z8000
User avatar

Joined: Mon Jun 14, 2004 4:04 pm
Posts: 985
Location: Earth
Gadget wrote:
DJSPIN80 wrote:
C# is different, it's strongly typed, hence:

string a = "5000";
int b = 100;

Console.Write( a + b );

//output is 5000100


Not sure if you caught this, but that isn't a caste. You're just outputing a followed by b. Because it is strongly typed you couldn't do something like a + b; in your example.

What I am wondering is if the caste direction is being determined contextually....

a = 1
b = "20"
c = 0
c = a + b #c = 21
c = "0"
c = a + b #c = "21"

This is the problem with programming forums - you allow Virus Basic into the forum and pretty soon 90% of your time is spent dealing questions from that damn language!


Of course, Viral Basic will always be part of any programming forum because others think it is a programming language!

I remember slamming a co-worker once. He was so proud that he was learning VB, this was the time I really got serious about C++. I told him that programmers don't think of VB programmers as programmers, and with that, he turned a sour face. :lol:


Top
  Profile  
 
 Post subject:
PostPosted: Thu Aug 19, 2004 7:21 am 
Bitchin' Fast 3D Z8000
Bitchin' Fast 3D Z8000
User avatar

Joined: Sat Jun 26, 2004 3:44 pm
Posts: 513
Location: Vancouver Island
DJSPIN80 wrote:

I remember slamming a co-worker once. He was so proud that he was learning VB, this was the time I really got serious about C++. I told him that programmers don't think of VB programmers as programmers, and with that, he turned a sour face. :lol:


Real men program in Assembler. Real men wear leather. And real men go to places where the men are men, and the sheep are nervous. ;-)

VB is as much a programming languages as C++, it's simply it's context- how it's used. VB is a buisness language, used for fast development of business applications and projects where the people aren't required to know great deals about anything other than business process.

C++ is a systems language that deals with the core root of how systems operate. It is the technology in support of the business process, not the process itself.

Perl, VBscipt, JavaScript, Php, HTML, XML and the like are not programming languages. They're interpreted or scripted languages which do not rely on compilation - which in my opinion is a qualifer to be a "programming" language.

If VB isn't a programming language than neither is COBOL. heh,heh...well, there is some debate there as well.


Top
  Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 64 posts ]  Go to page Previous  1, 2, 3, 4  Next

All times are UTC - 8 hours


Who is online

Users browsing this forum: No registered users and 2 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group