簡體   English   中英

向左或向下移動精靈比向右或向上移動精靈快

[英]Moving a sprite to the left or down is faster than moving it to the right or up

我正在用Slick2DLWGJL制作基本游戲,但遇到一個奇怪的問題,當我將播放器(圖像)向左/向下移動時,它比向右/向上移動的速度慢。

Input input = gc.getInput();

    if(input.isKeyDown(Input.KEY_W)){
        PlayerY += delta * .1f;
    }
    if(input.isKeyDown(Input.KEY_S)){
        PlayerY -= delta * .1f;
    }

    if(input.isKeyDown(Input.KEY_A)){
        PlayerX -= delta * .1f;
    }
    if(input.isKeyDown(Input.KEY_D)){
        PlayerX += delta * .1f;
    }

所有這些代碼都在方法update()中

編輯:我的所有代碼都可以在這里查看https://www.dropbox.com/sh/p13sbxucmni36vd/K5XTaNOulm

任何幫助將不勝感激

  //Setting the original PlayerX and PlayerY values
    private static int PlayerX = Game.ScreenLength/2;
    private static int PlayerY = Game.ScreenHeight/2; 

VS

   if(input.isKeyDown(Input.KEY_W)){
        PlayerY += delta * .1f;
    }
    if(input.isKeyDown(Input.KEY_S)){
        PlayerY -= delta * .1f;
    }

    if(input.isKeyDown(Input.KEY_A)){
        PlayerX -= delta * .1f;
    }
    if(input.isKeyDown(Input.KEY_D)){
        PlayerX += delta * .1f;
    } 

看到問題了嗎? 更改PlayerX和PlayerY(以防萬一也要使用Delta)以浮動,您的問題將得到解決。 請記住,當您從float轉換為int時,它總是會舍入。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM