jQuery RPG游戏移动系统

时间:2015-03-19 14:57:30

标签: javascript jquery

所以,我正在尝试用Javascript(jQuery)做一个小浏览器游戏。我已经在战斗系统,现在我正在努力做动作系统,所以你可以在世界各地移动。

让我们说我想打开地图然后去城里然后去购物。打开MAP窗口并关闭所有其他窗口的最佳方法是什么,然后打开TOWN窗口并关闭MAP窗口,然后打开SHOP窗口并关闭TOWN窗口?

我尝试了一些东西,但感觉有点不好..这是不是一个好的方法吗?

<!DOCTYPE html>
    <html>
    <head>
        <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
    </head>
    <body>

    <style>
    .shopBox {
        width: 300px;
        height: 100px;
        border: 1px solid black;
        display: none;
    }

    .mapBox {
        width: 500px;
        height: 500px;
        border: 1px solid black;
        display: none;
    }

    .button {
        width: 50px;
        height: auto;
        border: 1px dashed black;
        margin: 5px;
        padding: 2px;
        cursor: pointer;
    }

    .shop {
        width: 50px;
        height: 50px;
        border: 1px solid black;
        position: relative;
        left: 50px;
        top: 100px;
        cursor: pointer;
    }

    </style>

    <script>
    $(document).ready(function(){
        $("#exit").hide();

        $("#mapBtn").click(function(){
            $("#map").show();
            $("#exit").show();
            $("#shop").hide();
            $("#mapBtn").hide();
        });

        $("#shopImg").click(function(){
            $("#map").hide();
            $("#shop").show();
            $("#exit").show();
        });
    });
    </script>

    <div class="button" id="mapBtn">Map</div>

    <div class="mapBox" id="map">
        This is your map
        <div class="shop" id="shopImg">Shop!!</div>
    </div>

    <div class="shopBox" id="shop">Welcome to my shop!</div>



    </body>
    </html>

2 个答案:

答案 0 :(得分:1)

您编写的代码看起来很实用。我没有看到任何问题。您将遇到的唯一问题是当您开始介绍更多细节和复杂性时。

请确保您开始将这些内容添加到带注释的函数中,否则您将迷失方向。

除此之外,请考虑使用Unity开发平台或Flash,或者考虑使用可以节省大量时间的库:例如。 Crafty

否则,您将继续学习,因为您将继续编码。专注于功能,然后优化。在经验有限的情况下做两件事都会适得其反。

Cheeers

答案 1 :(得分:0)

您可以像这样选择多个元素

 $("#mapBtn").click(function(){
        $("#map, #exit").show();
        $("#shop, #mapBtn").hide();
    });

这至少会为你节省一些空间。