PAGUE 6 MESES
LEVE 12 MESES
GARANTIR DESCONTO

Fórum adicionado movimento a imagen do player #498156

17/10/2014

0

Quero uma ajuda ,, no arquivo player.java tem o trexo da imagem que vai e adicionada para representa o player ,que e essa ai em baixo.
  baseTraits.iconID = TileManager.CHAR_HERO; 


Quero adiciona o codigo de movimento da imagen Que esse codigo ai em baixo.

package com.gpl.rpg.AndorsTrail.model.actor;

import java.util.Random;
import android.graphics.Bitmap ;

import android.media.*;
import android.view.*;
import java.io.*;
import android.graphics.drawable.*;
import com.gpl.rpg.AndorsTrail.controller.listeners.*;
import com.gpl.rpg.AndorsTrail.util.*;
import com.gpl.rpg.AndorsTrail.model.map.*;
import com.gpl.rpg.AndorsTrail.model.map.PredefinedMap;
import com.gpl.rpg.AndorsTrail.util.Coord;
import com.gpl.rpg.AndorsTrail.util.ListOfListeners;
import java.io.BufferedReader;
import android.view.View.*;
import android.text.style.*;
import com.gpl.rpg.AndorsTrail.resource.tiles.*;

public  class PlayerChar {
	
	
    
	private boolean fromBreak;
	private int iFromBreak;
	private int x,y,dx,dy,key,dir;
	
	Image[][]  Player = new Image[4][3];

	private Object[] Sprite

;




	//private Object[] iconID;//
    
	
	
	public PlayerChar  (int x, int y, Image[][] Sprite )  {

	
        this.x = x;
        this.y = y;
        dx = 0;
        dy = 0;
        System.arraycopy(Sprite[0], 0, this.Sprite[0], 0, 3);
        System.arraycopy(Sprite[1], 0, this.Sprite[1], 0, 3);
        System.arraycopy(Sprite[2], 0, this.Sprite[2], 0, 3);
        System.arraycopy(Sprite[3], 0, this.Sprite[3], 0, 3);return ;
	}

	public void move(boolean[] player)
	{
		// TODO: Implement this method
	}

	public void move(boolean[] player, int[] directions) {

        fromBreak = false;
        for(int i = 0; i < player.length; i++) {
            if(player[i]) {
                fromBreak = true;
                iFromBreak = directions[i];
                break;
            }
        }

		if(fromBreak) {
			switch(iFromBreak){
				case 0:
					if(dy != -1) {
						y += dy + 1;
					}
					break;
				case 1:
					if(dx != 1) {
						x += dx - 1;
					}
					break;
				case 2:
					if(dy != 1) {
						y += dy - 1;
					}
					break;
				case 3:
					if(dx != -1) {
						x += dx + 1;
					}
					break;
			}
		} else {
			x += dx;
			y += dy;
		}

	}

	public void keyPressed(KeyEvent e) {

		key = e.getKeyCode();

		switch(key) {
			case KeyEvent.KEYCODE_DPAD_UP:
				dy = -1;
				dir = 0;
				break;
			case KeyEvent.KEYCODE_DPAD_DOWN:
				dy = 1;
				dir = 2;
				break;
			case KeyEvent.KEYCODE_DPAD_LEFT:
				dx = -1;
				dir = 3;
				break;
			case KeyEvent.KEYCODE_DPAD_RIGHT:
				dx = 1;
				dir = 1;
				break;
		}

	}

	public void keyReleased(KeyEvent e) {

		key = e.getKeyCode();

		switch(key) {
			case KeyEvent.KEYCODE_DPAD_UP:
				dy = 0;
				break;
			case KeyEvent.KEYCODE_DPAD_DOWN:
				dy = 0;
				break;
			case KeyEvent.KEYCODE_DPAD_LEFT:
				dx = 0;
				break;
			case KeyEvent.KEYCODE_DPAD_RIGHT:
				dx = 0;
				break;
		}

	}

	public int previousPosition() {
		return dir;
	}

	public int getX() {
		return x;
	}

	public int getY() {
		return y;
	}
	

	

 }

```
Como poso fazer isso .
Todo trexo di player eh esse aqui .

 package com.gpl.rpg.AndorsTrail.model.actor;

import android.util.FloatMath;
import android.util.SparseIntArray;
import com.gpl.rpg.AndorsTrail.AndorsTrailApplication;
import com.gpl.rpg.AndorsTrail.context.ControllerContext;
import com.gpl.rpg.AndorsTrail.context.WorldContext;
import com.gpl.rpg.AndorsTrail.controller.Constants;
import com.gpl.rpg.AndorsTrail.model.ability.ActorCondition;
import com.gpl.rpg.AndorsTrail.model.ability.SkillCollection;
import com.gpl.rpg.AndorsTrail.model.item.DropListCollection;
import com.gpl.rpg.AndorsTrail.model.item.Inventory;
import com.gpl.rpg.AndorsTrail.model.item.Loot;
import com.gpl.rpg.AndorsTrail.model.quest.QuestProgress;
import com.gpl.rpg.AndorsTrail.resource.tiles.TileManager;
import com.gpl.rpg.AndorsTrail.savegames.LegacySavegameFormatReaderForPlayer;
import com.gpl.rpg.AndorsTrail.util.Coord;
import com.gpl.rpg.AndorsTrail.util.Range;
import com.gpl.rpg.AndorsTrail.util.Size;

import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
import java.util.HashMap;
import java.util.HashSet;
import java.util.Map.Entry;
import android.media.*;
import com.gdacarv.engine.androidgame.*;
import android.transition.*;

public final class Player extends Actor {

	public static final int DEFAULT_PLAYER_ATTACKCOST = 4;
	public final Coord lastPosition;
	public final Coord nextPosition;

	// TODO: Should be privates
	public int level;
	public final PlayerMovement MoveImage = new PlayerMovement();
	public final PlayerBaseTraits baseTraits = new PlayerBaseTraits();
	public final Range levelExperience; // ranges from 0 to the delta-amount of exp required for next level
	public final Inventory inventory;
	private final SparseIntArray skillLevels = new SparseIntArray();
	public int availableSkillIncreases = 0;
	public int useItemCost;
	public int reequipCost;
	public int totalExperience;

	private final HashMap<String, HashSet<Integer> > questProgress = new HashMap<String, HashSet<Integer> >();
	private String spawnMap;
	private String spawnPlace;
	private final HashMap<String, Integer> alignments = new HashMap<String, Integer>();

	// Unequipped stats
	public static final class PlayerBaseTraits {
		public int iconID;
		public int maxAP;
		public int maxHP;
		public int moveCost;
		public int attackCost;
		public int attackChance;
		public int criticalSkill;
		public float criticalMultiplier;
		public final Range damagePotential = new Range();
		public int blockChance;
		public int damageResistance;
		public int useItemCost;
		public int reequipCost;
	}
	
	public static final class PlayerMovement {
	public int sprites;
    public int PlayerChar;	
		
	}

	public void resetStatsToBaseTraits() {
		this.iconID = this.baseTraits.iconID;
		this.ap.max = this.baseTraits.maxAP;
		this.health.max = this.baseTraits.maxHP;
		this.moveCost = this.baseTraits.moveCost;
		this.attackCost = this.baseTraits.attackCost;
		this.attackChance = this.baseTraits.attackChance;
		this.criticalSkill = this.baseTraits.criticalSkill;
		this.criticalMultiplier = this.baseTraits.criticalMultiplier;
		this.damagePotential.set(this.baseTraits.damagePotential);
		this.blockChance = this.baseTraits.blockChance;
		this.damageResistance = this.baseTraits.damageResistance;
		this.useItemCost = this.baseTraits.useItemCost;
		this.reequipCost = this.baseTraits.reequipCost;
	}

	public void resetStatsToPlayerMovement() {
		
		
	}
	
	public Player() {
		super(
			new Size(1, 1)
			, true // isPlayer
			, false // isImmuneToCriticalHits
		);
		this.lastPosition = new Coord();
		this.nextPosition = new Coord();
		this.levelExperience = new Range();
		this.inventory = new Inventory();
	}
 //esse trexo eu que adicionei ta em teste //
	public void initializeNewPlayerMovement(PlayerChar Sprite){
		boolean[] Player = null;
		Sprite.move(Player);
	}
	
	
	public void initializeNewPlayer(DropListCollection dropLists, String playerName) {
		baseTraits.iconID = TileManager.CHAR_HERO;
		baseTraits.maxAP = 10;
		baseT 
Lukas Florencio

Lukas Florencio

Responder

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar