0

I'm currently trying to create a client program that sends location variables (x and y) to a server, which then passes it on to another client and vice versa so when one client moves the object, the other client see's the change immediately on screen.

I think get and set methods are the way forward for my task, but I can't figure out how to do this.

The client creates a new instance of an object which has the following methods:

public int getX() {
        return x;
    }

    public int getY() {
        return y;
    }
	 
	 public void setX(int x) {
	 		this.x = x;
	}
	
	public void setY(int y) {
			this.y = y;
	}

The client code has:

player1.getX();
		player1.getY();

While the server code has:

player1.setX();
	    player1.setY();

The object code and client code compile fine, but the server code refuses to compile stating:

setX(int) in Car cannot be applied to ()
            player1.setX();

With the same thing for setY();

Could someone please explain what i'm doing wrong? Or a better method to pass the location coordinates between clients and servers?

Thanks

3
Contributors
5
Replies
7
Views
7 Years
Discussion Span
Last Post by poorquality
Featured Replies
  • If you declare a method as taking an int as a parameter, then you need to pass that int. i.e. in your setX and setY methods, you cannot call setX(), you have to call setX(PUTANINTHERE!!!) hope that helps. And one more thing - having getX and getY methods might not … Read More

1

If you declare a method as taking an int as a parameter, then you need to pass that int. i.e. in your setX and setY methods, you cannot call setX(), you have to call setX(PUTANINTHERE!!!)

hope that helps.

And one more thing - having getX and getY methods might not be helpful, unless you are returning random x and y positions. If you are actually getting the position of a mouse click or something of that nature, Swing's MouseListener class (and corresponding tutorial) will be helpful. You should start by just writing a client/server pair where the client can send the server the x and y position. Then add on another client, one by one.

0

If you declare a method as taking an int as a parameter, then you need to pass that int. i.e. in your setX and setY methods, you cannot call setX(), you have to call setX(PUTANINTHERE!!!)

hope that helps.

And one more thing - having getX and getY methods might not be helpful, unless you are returning random x and y positions. If you are actually getting the position of a mouse click or something of that nature, Swing's MouseListener class (and corresponding tutorial) will be helpful. You should start by just writing a client/server pair where the client can send the server the x and y position. Then add on another client, one by one.

Thanks for the quick reply, so basically I need to pass an int in the setX and Y methods, I can't tell it to pass say...the updated location? My initial x and y have values, for example 50, 50 to place the car to that location, I was hoping there was a way to set the updated value after movement takes place to the set method (Movement is controlled via keys, each key either increases or decreases the x or y value which I am trying to pass to the server).

From what you've said I'm guessing I can't do that using setX as it wants me to give it a value rather than being able to do setX(x); or something?

Any ideas how I can go about doing what I have outlined in this post?

Thanks for your help

0

If "x" is declared as an int variable (which it seems to be) then of course you can pass it to your setX method. You can pass any int variable to a method declared as taking an int. Did I misunderstand your question?

PS if you are waiting for a key to be pressed in order to add to X's value, then you can implement Swing's KeyListener class I think, but it's been a while since I've looked at that.

Edited by BestJewSinceJC: n/a

0

thank for sharing this useful and informative posting with us its really very useful for us.

0

If "x" is declared as an int variable (which it seems to be) then of course you can pass it to your setX method. You can pass any int variable to a method declared as taking an int. Did I misunderstand your question?

PS if you are waiting for a key to be pressed in order to add to X's value, then you can implement Swing's KeyListener class I think, but it's been a while since I've looked at that.

No you didn't, thanks it is what I assumed and realised what was preventing me was that x is stored privately (though using get and set methods I was led to believe it made publicly accessible versions which I tried to call and didn't work).

Thanks for the help

This topic has been dead for over six months. Start a new discussion instead.
Have something to contribute to this discussion? Please be thoughtful, detailed and courteous, and be sure to adhere to our posting rules.