/****************************************************************************** * Copyright (C) 2007 ShenZhen ComTop Information Technology Co.,Ltd * All Rights Reserved. * �����Ϊ���ڿ����տ������ơ�δ������˾��ʽ����ͬ�⣬�����κθ��ˡ����岻��ʹ�á����ơ� * �޸Ļ򷢲������. *****************************************************************************/ package com.javaxyq.widget; import java.awt.Graphics; import java.awt.Point; import com.javaxyq.core.SpriteFactory; /** * ��Ϸָ�� * * @author ����ΰ * @history 2008-6-8 ����ΰ �½� */ public class Cursor { public static final String DEFAULT_CURSOR = "01"; public static final String ATTACK_CURSOR = "15"; public static final String EXCHANGE_CURSOR = "exchange"; public static final String GIVE_CURSOR = "13"; public static final String TALK_CURSOR = "22"; public static final String PICKUP_CURSOR = "03"; public static final String FRIEND_CURSOR = "friend"; public static final String SELECT_CURSOR = "11"; public static final String CATCH_CURSOR = "21"; public static final String FORBID_CURSOR = "04"; public static final String TEXT_CURSOR = "02"; public static final String PROTECT_CURSOR = "17"; private SpriteImage pointer; private SpriteImage effect; private int x; private int y; /** ����ij������� */ private int clickX; private int clickY; /** xƫ����(�����clickX,Ϊ�˾�ȷ��ʾ�����Ч��) */ private int offsetX; private int offsetY; public Cursor(String type, boolean effect) { this.pointer = new SpriteImage(SpriteFactory.loadSprite("/wzife/cursor/"+type+".tcp")); if(effect) { this.effect = new SpriteImage(SpriteFactory.loadSprite("/addon/wave.tcp"));; this.effect.setVisible(false); } } public SpriteImage getPointer() { return pointer; } public SpriteImage getEffect() { return effect; } public void setClick(int x, int y) { this.clickX = x; this.clickY = y; this.effect.setVisible(true); } public int getClickX() { return clickX; } public int getClickY() { return clickY; } public Point getClickPosition() { return new Point(this.clickX, this.clickY); } public void setOffset(int x, int y) { this.offsetX = x; this.offsetY = y; } public int getOffsetX() { return offsetX; } public void setOffsetX(int offsetX) { this.offsetX = offsetX; } public int getOffsetY() { return offsetY; } public void setOffsetY(int offsetY) { this.offsetY = offsetY; } public int getX() { return x; } public int getY() { return y; } /** * ����ָ������Ļ��λ�� * @param x * @param y */ public void setLocation(int x, int y) { this.x = x; this.y = y; } public void draw(Graphics g) { this.pointer.draw(g, x, y); } public void update(long elapsedTime) { this.pointer.update(elapsedTime); } }