• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            天行健 君子當自強而不息

            Working with Maps and Levels(2)

            Using Character Map Lists in Your Game

            Using character map lists is a quick way to place characters in a map. When you
            load a map into memory, load the matching character map list and insert the characters.
            Although this method of adding characters to a map seems desirable, you’ll
            need a bit more flexibility at times, and that’s when using scripts comes into play.

             

            Script Placement

            As I said earlier in this section, you can also use scripts to insert characters into a
            map. Scripts give you more control over where and when a character is placed on
            a map than using direct placement does.

            For example, imagine that you want to track time in your game. At nighttime, all town
            vendors are at home, so the marketplace is empty. Guards are in the vendors’ places,
            so your game needs to know which characters to place—the vendors or the guards.

            You might notice that I’m coming up empty here by not defining a class for loading
            character placements on maps. How are your characters going to know where
            to be placed on your maps? As you might have guessed, you can use the Mad Lib
            Script system to create and incorporate an action template
            and a script processor into your project—the script processor then assumes the task
            of adding characters to the map based on the scripts you write for your game.

            A sample action template that adds characters to the map might look like this:

            “Add character # ~ to map at coordinates ~, ~, ~”
            INT 0 65535
            FLOAT -5000 5000
            FLOAT -5000 5000
            FLOAT -5000 5000

            With that single action defined, you can construct small scripts that place a character
            (by a unique identification number) on the map based on the X-, Y-, and Zcoordinates
            you provided. Quick, clean, and right to the point, scripting is definitely the way to go.

             

            Using Map Triggers

            Cause and effect—two words that say it all. In your world, nothing happens unless
            you specifically tell it to. Most events in your game happen when a character picks
            up an item, walks past a certain spot, or even tries to talk to another character.
            Those events are called triggers, and once a trigger has been signaled, a series of
            effects are sure to follow. Those effects usually take the form of a script being
            processed.

            The problem at this point isn’t dealing with the scripts, but figuring out how to
            trigger them. Programming a trigger for things like picking up an item is easy
            enough; just assign a number to the item description and process the appropriate
            script if that item is picked up. The same goes for talking to characters.

            Maps are a whole new deal. Maps come in all shapes and sizes, and trying to figure
            out when a character touches a certain spot on a map is the problem at this point.
            Well, I’m kidding, as that’s not really a problem. The trick is to mark sections of
            the map with geometric shapes that are used to quickly check whether a character
            steps inside the shape.

            The geometric shapes you want to use are spheres, boxes, cylinders, and triangles.
            Take a look at each one and how they all work out in the whole trigger scheme.


            posted on 2007-12-09 14:50 lovedday 閱讀(169) 評論(0)  編輯 收藏 引用

            公告

            導航

            統計

            常用鏈接

            隨筆分類(178)

            3D游戲編程相關鏈接

            搜索

            最新評論

            色欲久久久天天天综合网 | 人人狠狠综合久久亚洲| 久久国产精品无码网站| 亚洲精品无码久久不卡| www.久久精品| 久久精品视频一| 99久久精品国内| 欧美久久亚洲精品| 精品无码久久久久久午夜| 久久中文字幕人妻丝袜| 久久99精品国产麻豆蜜芽| 国产亚洲精品久久久久秋霞| 国产精品99久久久久久宅男| 久久国产精品99国产精| 国产激情久久久久久熟女老人 | 亚洲欧美日韩久久精品第一区| 久久久久中文字幕| 精品久久久久久中文字幕| 久久天天躁狠狠躁夜夜网站| 人妻中文久久久久| 久久久精品无码专区不卡| 国产亚洲美女精品久久久久狼| 狠狠综合久久AV一区二区三区| 国产日韩久久久精品影院首页| 国产午夜精品久久久久免费视 | 亚洲乱码中文字幕久久孕妇黑人| 久久人妻少妇嫩草AV无码蜜桃| 久久精品国产精品亚洲艾草网美妙 | 97久久久久人妻精品专区| 亚洲国产美女精品久久久久∴| 中文国产成人精品久久亚洲精品AⅤ无码精品 | 久久电影网一区| 精品精品国产自在久久高清| 麻豆AV一区二区三区久久 | 亚洲AV日韩精品久久久久久久| 久久精品视频一| 亚洲色大成网站WWW久久九九| 久久久久久伊人高潮影院| 久久久久久亚洲AV无码专区| 欧美丰满熟妇BBB久久久| 99久久99这里只有免费费精品|