JP5395335B2 - Puzzle game program, puzzle game apparatus, puzzle game system, and game control method - Google Patents

Puzzle game program, puzzle game apparatus, puzzle game system, and game control method Download PDF

Info

Publication number
JP5395335B2
JP5395335B2 JP2007141936A JP2007141936A JP5395335B2 JP 5395335 B2 JP5395335 B2 JP 5395335B2 JP 2007141936 A JP2007141936 A JP 2007141936A JP 2007141936 A JP2007141936 A JP 2007141936A JP 5395335 B2 JP5395335 B2 JP 5395335B2
Authority
JP
Japan
Prior art keywords
rotating
gear
game
objects
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2007141936A
Other languages
Japanese (ja)
Other versions
JP2008295530A (en
Inventor
真理 白川
ゴダード ジャイルズ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nintendo Co Ltd
Original Assignee
Nintendo Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nintendo Co Ltd filed Critical Nintendo Co Ltd
Priority to JP2007141936A priority Critical patent/JP5395335B2/en
Priority to US12/068,056 priority patent/US20080300033A1/en
Publication of JP2008295530A publication Critical patent/JP2008295530A/en
Application granted granted Critical
Publication of JP5395335B2 publication Critical patent/JP5395335B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/55Controlling game characters or game objects based on the game progress
    • A63F13/56Computing the motion of game characters with respect to other game characters, game objects or elements of the game scene, e.g. for simulating the behaviour of a group of virtual soldiers or for path finding
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F9/00Games not otherwise provided for
    • A63F9/06Patience; Other games for self-amusement
    • A63F9/0612Electronic puzzles
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/20Input arrangements for video game devices
    • A63F13/21Input arrangements for video game devices characterised by their sensors, purposes or types
    • A63F13/214Input arrangements for video game devices characterised by their sensors, purposes or types for locating contacts on a surface, e.g. floor mats or touch pads
    • A63F13/2145Input arrangements for video game devices characterised by their sensors, purposes or types for locating contacts on a surface, e.g. floor mats or touch pads the surface being also a display device, e.g. touch screens
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/25Output arrangements for video game devices
    • A63F13/26Output arrangements for video game devices having at least one additional display device, e.g. on the game controller or outside a game booth
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/10Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals
    • A63F2300/1068Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals being specially adapted to detect the point of contact of the player on a surface, e.g. floor mat, touch pad
    • A63F2300/1075Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals being specially adapted to detect the point of contact of the player on a surface, e.g. floor mat, touch pad using a touch screen
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/60Methods for processing data by generating or executing the game program
    • A63F2300/64Methods for processing data by generating or executing the game program for computing dynamical parameters of game objects, e.g. motion determination or computation of frictional forces for a virtual car

Description

この発明はパズルゲームプログラム、パズルゲーム装置、パズルゲームシステムおよびゲーム制御方法に関し、特にたとえば、パズルゲームをプレイするための、パズルゲームプログラム、パズルゲーム装置、パズルゲームシステムおよびゲーム制御方法に関する。 The present invention puzzle game program, Pa Zurugemu apparatus, a puzzle game system and a game control method, in particular for example, for playing the puzzle game, puzzle game program, Pa Zurugemu apparatus, a puzzle game system and a game control method.

この種の従来のパズルゲームの一例が、特許文献1に開示される。この特許文献1に開示されるパズルゲームでは、たとえば、表示画面内に表示された複数の球のうちの任意の球を中心としてその周囲の玉を回転移動させる。このパズルゲームでは、表示画面内に規則正しく正三角形の格子模様に様々な属性の複数の玉が表示される。そして、コントローラの操作によって選択された中心座標と半径とに基づいて、該当する複数の玉がある場合には、最小単位の形の属性を玉と同一の属性に変え、画面上の玉が同一属性の玉で囲まれている場合には、囲まれた玉と同一の属性に変える。   An example of this type of conventional puzzle game is disclosed in Patent Document 1. In the puzzle game disclosed in Patent Document 1, for example, a ball around the sphere is rotated about an arbitrary sphere among a plurality of spheres displayed in the display screen. In this puzzle game, a plurality of balls having various attributes are regularly displayed in a regular triangular lattice pattern on the display screen. Then, based on the center coordinates and radius selected by the operation of the controller, if there are multiple corresponding balls, change the attribute of the smallest unit shape to the same attribute as the ball, and the ball on the screen is the same If it is surrounded by an attribute ball, it is changed to the same attribute as the enclosed ball.

また、この種のパズルゲームの他の例が非特許文献1に示される。この非特許文献1に開示されるパズルゲームでは、色の異なる三角形のオブジェクトがランダムにゲーム画面上方から落下し、ゲーム空間に配置される。プレイヤは、六角形状のダイヤルを移動および回転させることにより、同じ色の三角形オブジェクトを用いて六角形を作る。すると、その六角形がゲーム画面上から消える。つまり、六角形を構成する6つの三角形オブジェクトがゲーム空間から消去される。
特開4002−303265 http://www.nintendo.co.jp/n08/bit_g/index.html 「DIALHEX」
Another example of this type of puzzle game is shown in Non-Patent Document 1. In the puzzle game disclosed in Non-Patent Document 1, triangular objects of different colors randomly fall from above the game screen and are arranged in the game space. The player creates a hexagon using the triangle object of the same color by moving and rotating the hexagonal dial. Then, the hexagon disappears from the game screen. That is, the six triangular objects that form the hexagon are deleted from the game space.
JP4002303265 http://www.nintendo.co.jp/n08/bit_g/index.html “DIALHEX”

しかし、特許文献1のパズルゲームは、或る玉を中心としてその周りの玉を回転移動させるだけなので、玉の移動の自由度が乏しく単調で意外性が無く、飽きられやすいという問題がある。同様に、非特許文献1のパズルゲームでは、ダイヤルで囲まれる複数の三角形のオブジェクトを回転させるだけなので、飽きられやすいという問題がある。   However, since the puzzle game of Patent Document 1 merely rotates and moves balls around a certain ball, there is a problem that the degree of freedom of movement of the ball is poor, monotonous, not surprising, and easily bored. Similarly, the puzzle game of Non-Patent Document 1 has a problem that it is easy to get bored because it only rotates a plurality of triangular objects surrounded by a dial.

それゆえに、この発明の主たる目的は、新規な、パズルゲームプログラム、パズルゲーム装置、パズルゲームシステムおよびゲーム制御方法を提供することである。 Another object of the invention is novel, puzzle game program, Pa Zurugemu device is to provide a puzzle game system and game control method.

また、この発明の他の目的は、斬新なパズルゲームをプレイできる、パズルゲームプログラム、パズルゲーム装置、パズルゲームシステムおよびゲーム制御方法を提供することである。 Another object of the present invention can play an innovative puzzle game, puzzle game program, Pa Zurugemu device is to provide a puzzle game system and game control method.

本発明は、上記の課題を解決するために、以下の構成を採用した。なお、括弧内の参照符号および補足説明等は、本発明の理解を助けるために後述する実施の形態との対応関係を示したものであって、本発明を何ら限定するものではない。   The present invention employs the following configuration in order to solve the above problems. The reference numerals in parentheses, supplementary explanations, and the like indicate correspondence relationships with embodiments described later to help understanding of the present invention, and do not limit the present invention in any way.

第1の発明は、記憶手段、表示手段および操作手段を備えるパズルゲーム装置のパズルゲームプログラムであって、パズルゲーム装置のコンピュータに、ゲーム画像表示ステップ、回転処理ステップ、接続設定判断ステップ、関係判別ステップ、および移動処理ステップを実行させる。ゲーム画像表示ステップは、記憶手段に記憶される画像データを用いて、少なくとも1つの受容部が設けられた回転オブジェクトを複数配置するとともに、少なくとも1つの移動オブジェクトがいずれかの受容部に受容されたゲーム画像を表示手段に表示する。回転処理ステップは、プレイヤの操作に応じて操作手段から入力される操作データに従って回転オブジェクトを回転させる。接続設定判断ステップは、移動オブジェクトが受容された第1受容部と、当該第1受容部が設けられる回転オブジェクトとは異なる他の回転オブジェクトに設けられた第2受容部との間において当該移動オブジェクトが移動可能であることの接続設定が有るかどうかを判断する。関係判別ステップは、回転処理ステップによって回転オブジェクトを回転させた結果、接続設定判断ステップによって接続設定が有ると判断された第1受容部と第2受容部とが所定の関係になったか否かを判別する。そして、移動処理ステップは、関係判別ステップによって所定の関係になったことが判別されたとき、当該移動オブジェクトを第1受容部から第2受容部に移動するようにゲーム画像を更新する。 A first invention is a puzzle game program of a puzzle game apparatus comprising a storage means, a display means, and an operation means, wherein a game image display step, a rotation processing step, a connection setting determination step, a relationship determination are performed on a computer of the puzzle game apparatus. Steps and movement processing steps are executed. In the game image display step, a plurality of rotating objects provided with at least one receiving portion are arranged using image data stored in the storage means, and at least one moving object is received in any receiving portion. The game image is displayed on the display means. In the rotation processing step, the rotating object is rotated in accordance with operation data input from the operation means in accordance with the player's operation. Connection setting determination step, the moving object in between the first receiving portion moving object is received, the second receiving portion to which the first receiving portion is provided on the other different rotation object and the rotating object provided It is determined whether or not there is a connection setting that can be moved. In the relationship determination step, as a result of rotating the rotating object in the rotation processing step, it is determined whether or not the first receiving unit and the second receiving unit determined to have connection setting in the connection setting determining step have a predetermined relationship. Determine. Then, the movement processing step updates the game image so as to move the moving object from the first receiving unit to the second receiving unit when it is determined by the relationship determining step that the predetermined relationship has been established.

請求項1の発明では、パズルゲーム装置(10)は、記憶手段(28,42)、表示手段(12,14)および操作手段(22,24)を備える。パズルゲームプログラムは、このパズルゲーム装置のコンピュータに、ゲーム画像表示ステップ(34,S3,S53,S123)、回転処理ステップ(34,S7)、接続設定判断ステップ(34,S9,S73)、関係判別ステップ(34,S9,S83)、および移動処理ステップ(34,S11)を実行させる。ゲーム画像表示ステップは、記憶手段に記憶される画像データを用いて、少なくとも1つの受容部が設けられた回転オブジェクトを複数配置するとともに、少なくとも1つの移動オブジェクトがいずれかの受容部に受容されたゲーム画像(300,320)を表示手段に表示する。回転処理ステップは、プレイヤの操作に応じて操作手段から入力される操作データに従って回転オブジェクト(302,304,306,322,324,326)を回転させる。たとえば、プレイヤが、回転オブジェクト上で、スライド操作するとき、このスライド操作に従って回転オブジェクトを回転させる。接続設定判断ステップは、移動オブジェクト(312a,312b,314a,314b,316a,316b)が受容された第1受容部(302a,302b,304a,304b,306a,306b,322a,322b,324a,324b,326a,326b)と、当該第1受容部が設けられる回転オブジェクトとは異なる他の回転オブジェクトに設けられた第2受容部(302a,302b,304a,304b,306a,306b,322a,322b,324a,324b,326a,326b)との間において当該移動オブジェクトが移動可能であることの接続設定が有るかどうかを判断する。関係判別ステップは、回転処理ステップによって回転オブジェクトを回転させた結果、接続設定判断ステップによって接続設定が有ると判断された第1受容部と第2受容部とが所定の関係になったか否かを判別する。たとえば、移動オブジェクトが移動可能な接続設定のなされた第1受容部と第2受容部とが、一直線上またはほぼ一直線上に並んだ状態になったかどうかを判別する。そして、移動処理ステップは、関係判別ステップによって所定の関係になったことが判別されたとき、記憶手段に記憶された移動オブジェクトの位置データを更新して、当該移動オブジェクトを第1受容部から第2受容部に移動するようにゲーム画像を更新する。 In the invention of claim 1, the puzzle game apparatus (10) includes storage means (28, 42), display means (12, 14), and operation means (22, 24). The puzzle game program is stored on the computer of the puzzle game apparatus in a game image display step (34, S3, S53, S123), a rotation processing step (34, S7), a connection setting determination step (34, S9, S73), and a relationship determination. Steps (34, S9, S83) and movement processing steps (34, S11) are executed. In the game image display step, a plurality of rotating objects provided with at least one receiving portion are arranged using image data stored in the storage means, and at least one moving object is received in any receiving portion. The game image (300, 320) is displayed on the display means. In the rotation processing step, the rotation object (302, 304, 306, 322, 324, 326) is rotated according to operation data input from the operation means in accordance with the operation of the player. For example, when the player performs a sliding operation on the rotating object, the rotating object is rotated according to the sliding operation. In the connection setting determination step, the first receiving unit (302a, 302b, 304a, 304b, 306a, 306b, 322a, 322b, 324a, 324b, 324b, 324b, 324b, 324b, 326a, 326b) and second receiving parts (302a, 302b, 304a, 304b, 306a, 306b, 322a, 322b, 324a, 324a, 324a, 322a, 322a, 322b, 324a, 324b, 326a, the mobile object to determine whether there is a connection setup that is movable between a 326b). In the relationship determination step, as a result of rotating the rotating object in the rotation processing step, it is determined whether or not the first receiving unit and the second receiving unit determined to have connection setting in the connection setting determining step have a predetermined relationship. Determine. For example, it is determined whether or not the first receiving unit and the second receiving unit that are set to be connected so that the moving object can move are aligned in a straight line or substantially in a straight line. The movement processing step updates the position data of the moving object stored in the storage means when the relationship determining step determines that the predetermined relationship has been established, and moves the moving object from the first receiving unit to the first receiving unit. 2 Update the game image to move to the receiving unit.

第1の発明によれば、受容部が設けられた複数の回転オブジェクトを回転させることによって、或る回転オブジェクトの受容部に受容されている移動オブジェクトを他の回転オブジェクトの受容部に移動させていくので、斬新なパズルゲームを提供することができる。   According to the first invention, by rotating a plurality of rotating objects provided with receiving parts, a moving object received by a receiving part of a certain rotating object is moved to a receiving part of another rotating object. Going forward, we can provide a novel puzzle game.

第2の発明は第1の発明に従属し、記憶手段には、移動オブジェクトおよび回転オブジェクトのそれぞれの属性が設定されており、移動オブジェクトの属性と移動オブジェクトが受容された回転オブジェクトの属性とが同一か否かを判別する属性判別ステップ、および属性判別ステップによって同一であると判別されたとき、ゲームの進行を変化させるゲーム処理ステップをコンピュータにさらに実行させる。   The second invention is dependent on the first invention, and each attribute of the moving object and the rotating object is set in the storage means, and the attribute of the moving object and the attribute of the rotating object that has received the moving object are set. When it is determined by the attribute determination step that determines whether or not they are the same, and the attribute determination step, the computer further executes a game processing step that changes the progress of the game.

第2の発明では、記憶手段には、移動オブジェクトおよび回転オブジェクトのそれぞれの属性(たとえば、色)が設定(記憶)されている。パズルゲームプログラムは、属性判別ステップ(34,S13)およびゲーム処理ステップ(34,S15)をコンピュータにさらに実行させる。属性判別ステップは、移動オブジェクトの属性と移動オブジェクトが受容された回転オブジェクトの属性とが同一か否かを判別する。ゲーム処理ステップは、属性判別ステップによって同一であると判別されたとき、ゲームの進行を変化させる。たとえば、すべての移動オブジェクトの属性と、移動オブジェクトが受容された回転オブジェクトの属性とが一致したとき、パズルを解いた(ゲームクリア)と判別する。   In the second invention, each attribute (for example, color) of the moving object and the rotating object is set (stored) in the storage means. The puzzle game program causes the computer to further execute an attribute determination step (34, S13) and a game processing step (34, S15). The attribute determining step determines whether or not the attribute of the moving object is the same as the attribute of the rotating object that has received the moving object. The game processing step changes the progress of the game when determined to be the same by the attribute determination step. For example, when the attributes of all the moving objects match the attributes of the rotating object that has received the moving objects, it is determined that the puzzle has been solved (game clear).

第2の発明によれば、プレイヤは移動オブジェクトが同じ属性の回転オブジェクトに受容されるように戦略的に回転オブジェクトを回転させることを要求されるので、面白さに優れたパズルゲームを提供することができる。   According to the second invention, since the player is required to strategically rotate the rotating object so that the moving object is received by the rotating object having the same attribute, it is possible to provide a puzzle game with excellent fun Can do.

第3の発明は第1または第2の発明に従属し、回転オブジェクトは、プレイヤの操作を許容する第1回転オブジェクトと、プレイヤの操作を許容しない第2回転オブジェクトとを含み、回転処理ステップは、プレイヤの操作に応じて操作手段から入力される操作データに従って第1回転オブジェクトを回転させたとき、第1回転オブジェクトの回転に基づいて第2回転オブジェクトを回転させる。   A third invention is dependent on the first or second invention, wherein the rotating object includes a first rotating object that allows an operation of the player and a second rotating object that does not allow an operation of the player, and the rotation processing step includes: When the first rotating object is rotated according to the operation data input from the operating means in accordance with the operation of the player, the second rotating object is rotated based on the rotation of the first rotating object.

第3の発明では、回転オブジェクトは、プレイヤの操作を許容する第1回転オブジェクト(322,324,326)と、プレイヤの操作を許容しない第2回転オブジェクト(302,304,306)とを含む。回転処理ステップは、プレイヤの操作に応じて操作手段から入力される操作データに従って第1回転オブジェクトを回転させたとき、第1回転オブジェクトの回転に基づいて第2回転オブジェクトを回転させる。たとえば、第1回転オブジェクトが回転させると、これに対応して、同じ方向に同じ回転量(角度)だけ第2回転オブジェクトを回転させる。ただし、第2回転オブジェクトの回転方向は逆向きでもよく、その回転量は第1回転オブジェクトの回転量よりも多くても少なくてもよい。   In the third invention, the rotating objects include a first rotating object (322, 324, 326) that allows the player's operation and a second rotating object (302, 304, 306) that does not allow the player's operation. The rotation processing step rotates the second rotating object based on the rotation of the first rotating object when the first rotating object is rotated according to the operation data input from the operation means in accordance with the operation of the player. For example, when the first rotating object is rotated, the second rotating object is rotated in the same direction by the same rotation amount (angle). However, the rotation direction of the second rotating object may be reversed, and the rotation amount may be larger or smaller than the rotation amount of the first rotating object.

第3の発明によれば、プレイヤの操作によって回転させた回転オブジェクトに連動して対応する他の回転オブジェクトも回転させるので、戦略性の高いパズルゲームを提供することができる。   According to the third aspect of the invention, the other rotating object corresponding to the rotating object rotated by the operation of the player is also rotated, so that it is possible to provide a highly strategic puzzle game.

第4の発明は第3の発明に従属し、回転オブジェクトは、複数の第1回転オブジェクトおよび複数の第2回転オブジェクトを含み、回転処理ステップは、少なくとも1つの第1回転オブジェクトの回転に基づいて、1つまたは複数の第2回転オブジェクトを回転させる。   A fourth invention is dependent on the third invention, the rotating object includes a plurality of first rotating objects and a plurality of second rotating objects, and the rotation processing step is based on rotation of at least one first rotating object. One or more second rotating objects are rotated.

第4の発明では、回転オブジェクトは、複数の第1回転オブジェクトおよび複数の第2回転オブジェクトを含む。回転処理ステップは、少なくとも1つの第1回転オブジェクトの回転に基づいて、1つまたは複数の第2回転オブジェクトを回転させる。つまり、1つの第1回転オブジェクトに連動して、2つ以上の第2回転オブジェクトが回転される。この場合、第1回転オブジェクトと第2回転オブジェクトとの数が同じであれば、第1回転オブジェクトに連動しない第2オブジェクトも存在し得る。   In the fourth invention, the rotating object includes a plurality of first rotating objects and a plurality of second rotating objects. The rotation processing step rotates one or more second rotating objects based on the rotation of at least one first rotating object. That is, two or more second rotating objects are rotated in conjunction with one first rotating object. In this case, if the number of the first rotating object and the second rotating object is the same, there may be a second object that is not linked to the first rotating object.

第4の発明によれば、第3の発明と同様に、戦略性の高いパズルゲームを提供することがでる。   According to the fourth invention, similarly to the third invention, it is possible to provide a highly strategic puzzle game.

第5の発明は第1ないし第4の発明に従属し、回転処理ステップによって回転オブジェクトを回転させた結果に基づいて、回転オブジェクトに設定される基準位置に対する第1受容部の第1角度と他の回転オブジェクトに設定される基準位置に対する第2受容部の第2角度とをそれぞれ算出する角度算出ステップをコンピュータにさらに実行させ、関係判別ステップは、第1角度と第2角度との差が所定範囲内であるか否かを判別し、移動処理ステップは、関係判別ステップによって差が所定範囲内であることが判別されたとき、記憶手段に記憶された移動オブジェクトの位置データを更新して、当該移動オブジェクトを第1受容部から第2受容部に移動するようにゲーム画像を更新する。   The fifth invention is dependent on the first to fourth inventions, and based on the result of rotating the rotating object in the rotation processing step, the first angle of the first receiving portion with respect to the reference position set for the rotating object, and others The computer further executes an angle calculating step for calculating the second angle of the second receiving portion with respect to the reference position set for the rotating object, and in the relationship determining step, the difference between the first angle and the second angle is predetermined. The movement processing step updates the position data of the moving object stored in the storage means when it is determined by the relationship determination step that the difference is within the predetermined range. The game image is updated so that the moving object is moved from the first receiving unit to the second receiving unit.

第5の発明では、パズルゲームプログラムは、角度算出ステップ(34,S81)をコンピュータにさらに実行させる。この角度算出ステップは、回転処理ステップによって回転オブジェクトを回転させた結果に基づいて、回転オブジェクトに設定される基準位置に対する第1受容部の第1角度と他の回転オブジェクトに設定される基準位置に対する第2受容部の第2角度とをそれぞれ算出する。関係判別ステップは、第1角度と第2角度との差が所定範囲内であるか否かを判別する。ただし、実施例においては、円盤状の回転オブジェクトを配置し、すべての回転オブジェクトの基準位置を同じ位置に設定し、また、所定の関係は第1受容部と第2受容部とが一直線上或いはほぼ一直線上に並ぶことを意味するため、第1角度と第2角度との差から180度引いた角度が所定範囲内であるか否かを判別するようにしてある。移動処理ステップは、関係判別ステップによって差が所定範囲内であることが判別されたとき、記憶手段に記憶された移動オブジェクトの位置データを更新して、当該移動オブジェクトを第1受容部から第2受容部に移動するようにゲーム画像を更新する。   In the fifth invention, the puzzle game program causes the computer to further execute an angle calculation step (34, S81). This angle calculation step is based on the result of rotating the rotating object in the rotation processing step, with respect to the first angle of the first receiving unit with respect to the reference position set for the rotating object and the reference position set for the other rotating object. A second angle of the second receiving part is calculated. The relationship determining step determines whether or not the difference between the first angle and the second angle is within a predetermined range. However, in the embodiment, a disk-shaped rotating object is arranged, the reference positions of all the rotating objects are set to the same position, and the predetermined relationship is that the first receiving unit and the second receiving unit are in a straight line or In order to mean that they are arranged substantially in a straight line, it is determined whether or not an angle obtained by subtracting 180 degrees from the difference between the first angle and the second angle is within a predetermined range. In the movement processing step, when it is determined that the difference is within the predetermined range in the relationship determination step, the position data of the moving object stored in the storage unit is updated, and the moving object is transferred from the first receiving unit to the second receiving unit. The game image is updated to move to the receiving unit.

第5の発明によれば、2つの回転オブジェクトの各受容部が所定の関係になったか否かを2つの受容部の角度差に基づいて判別するので、簡単な処理で判別することができる。   According to the fifth aspect, since it is determined based on the angle difference between the two receiving portions whether each receiving portion of the two rotating objects has a predetermined relationship, it can be determined by a simple process.

第6の発明は第1または第2の発明に従属し、プレイヤの操作によって指示された画面上の位置を操作手段から入力される操作データに従って検出する位置検出ステップ、および位置検出ステップによって検出された位置が回転オブジェクトを指示しているか否かを判別する位置判別ステップをコンピュータにさらに実行させ、回転処理ステップは、位置判別ステップによって回転オブジェクトを指示していることが判別されたとき、所定時間毎の位置変化に基づいて回転オブジェクトを回転させる。 A sixth invention is dependent on the first or second invention, and is detected by a position detecting step for detecting a position on the screen instructed by the operation of the player according to operation data input from the operating means, and a position detecting step. The computer further executes a position determining step for determining whether or not the specified position indicates a rotating object, and the rotation processing step is performed for a predetermined time when it is determined that the rotating object is specified by the position determining step. The rotating object is rotated based on the position change for each.

第6の発明では、パズルゲームプログラムは、位置検出ステップ(34,S33,S35)および位置判別ステップ(34,S37)をコンピュータにさらに実行させる。位置検出ステップは、プレイヤの操作によって指示された画面上の位置を操作手段から入力される操作データに従って検出する。位置判別ステップは、位置検出ステップによって検出された位置が回転オブジェクトを指示しているか否かを判別する。回転処理ステップは、位置判別ステップによって回転オブジェクトを指示していることが判別されたとき、所定時間毎の位置変化に基づいて回転オブジェクトを回転させる。   In the sixth invention, the puzzle game program causes the computer to further execute a position detection step (34, S33, S35) and a position determination step (34, S37). In the position detection step, the position on the screen instructed by the player's operation is detected according to the operation data input from the operation means. The position determination step determines whether or not the position detected by the position detection step indicates a rotating object. The rotation processing step rotates the rotating object based on a change in position every predetermined time when it is determined in the position determining step that the rotating object is designated.

第6の発明によれば、プレイヤの操作によって指示された画面上の位置に従って回転オブジェクトを回転させるので、直感的に操作することができ、操作性を向上させることができる。   According to the sixth aspect, since the rotating object is rotated according to the position on the screen instructed by the player's operation, it can be operated intuitively and the operability can be improved.

第7の発明は、ゲーム画像表示手段、回転処理手段、接続設定判断手段、関係判別手段、および移動処理手段を備えるパズルゲーム装置である。ゲーム画像表示手段は、少なくとも1つの受容部が設けられた回転オブジェクトを複数配置するとともに、少なくとも1つの移動オブジェクトがいずれかの受容部に受容されたゲーム画像を表示する。回転処理手段は、プレイヤの操作に応じて回転オブジェクトを回転させる。接続設定判断手段は、移動オブジェクトが受容された第1受容部と、当該第1受容部が設けられる回転オブジェクトとは異なる他の回転オブジェクトに設けられた第2受容部との間において当該移動オブジェクトが移動可能であることの接続設定が有るかどうかを判断する。関係判別手段は、回転処理手段によって回転オブジェクトを回転させた結果、接続設定判断手段によって接続設定が有ると判断された第1受容部と第2受容部とが所定の関係になったか否かを判別する。そして、移動処理手段は、関係判別手段によって所定の関係になったことが判別されたとき、移動オブジェクトを第2受容部に移動させる。
第8の発明は、ゲーム画像表示手段、回転処理手段、接続設定判断手段、関係判別手段、および移動処理手段を備えるパズルゲームシステムである。ゲーム画像表示手段は、少なくとも1つの受容部が設けられた回転オブジェクトを複数配置するとともに、少なくとも1つの移動オブジェクトがいずれかの受容部に受容されたゲーム画像を表示する。回転処理手段は、プレイヤの操作に応じて回転オブジェクトを回転させる。接続設定判断手段は、移動オブジェクトが受容された第1受容部と、当該第1受容部が設けられる回転オブジェクトとは異なる他の回転オブジェクトに設けられた第2受容部との間において当該移動オブジェクトが移動可能であることの接続設定が有るかどうかを判断する。関係判別手段は、回転処理手段によって回転オブジェクトを回転させた結果、接続設定判断手段によって接続設定が有ると判断された第1受容部と第2受容部とが所定の関係になったか否かを判別する。そして、移動処理手段は、関係判別手段によって所定の関係になったことが判別されたとき、移動オブジェクトを第2受容部に移動させる。
第9の発明は、記憶手段、表示手段および操作手段を備えるパズルゲーム装置のゲーム制御方法であって、パズルゲーム装置のコンピュータは、(a)記憶手段に記憶される画像データを用いて、少なくとも1つの受容部が設けられた回転オブジェクトを複数配置するとともに、少なくとも1つの移動オブジェクトがいずれかの受容部に受容されたゲーム画像を表示手段に表示し、(b)プレイヤの操作に応じて操作手段から入力される操作データに従って回転オブジェクトを回転させ、(c)移動オブジェクトが受容された第1受容部と、当該第1受容部が設けられる回転オブジェクトとは異なる他の回転オブジェクトに設けられた第2受容部との間において当該移動オブジェクトが移動可能であることの接続設定が有るかどうかを判断し、(d)ステップ(b)において回転オブジェクトを回転させた結果、ステップ(c)において接続設定が有ると判断された第1受容部と第2受容部とが所定の関係になったか否かを判別し、そして(e)ステップ(d)において所定の関係になったことを判別したとき、移動オブジェクトを第1受容部から第2受容部に移動するようにゲーム画像を更新する。
A seventh invention is a puzzle game apparatus comprising game image display means, rotation processing means, connection setting judgment means, relationship judgment means, and movement processing means. The game image display means arranges a plurality of rotating objects provided with at least one receiving unit, and displays a game image in which at least one moving object is received in any receiving unit. The rotation processing means rotates the rotating object according to the operation of the player. Connection setting determination means, the moving object in between the first receiving portion moving object is received, the second receiving portion to which the first receiving portion is provided on the other different rotation object and the rotating object provided It is determined whether or not there is a connection setting that can be moved. The relationship determining means determines whether or not the first receiving portion and the second receiving portion determined to have connection setting by the connection setting determining means as a result of rotating the rotating object by the rotation processing means. Determine. Then, the movement processing unit moves the moving object to the second receiving unit when it is determined by the relationship determining unit that the predetermined relationship has been established.
The eighth invention is a puzzle game system comprising game image display means, rotation processing means, connection setting judgment means, relationship judgment means, and movement processing means. The game image display means arranges a plurality of rotating objects provided with at least one receiving unit, and displays a game image in which at least one moving object is received in any receiving unit. The rotation processing means rotates the rotating object according to the operation of the player. Connection setting determination means, the moving object in between the first receiving portion moving object is received, the second receiving portion to which the first receiving portion is provided on the other different rotation object and the rotating object provided It is determined whether or not there is a connection setting that can be moved. The relationship determining means determines whether or not the first receiving portion and the second receiving portion determined to have connection setting by the connection setting determining means as a result of rotating the rotating object by the rotation processing means. Determine. Then, the movement processing unit moves the moving object to the second receiving unit when it is determined by the relationship determining unit that the predetermined relationship has been established.
A ninth invention is a game control method for a puzzle game apparatus comprising storage means, display means, and operation means, wherein the computer of the puzzle game apparatus uses (a) image data stored in the storage means to at least A plurality of rotating objects provided with one receiving unit are arranged, and a game image in which at least one moving object is received by any receiving unit is displayed on the display unit, and (b) an operation is performed according to the player's operation. The rotating object is rotated in accordance with the operation data input from the means, and (c) the first receiving unit in which the moving object is received and the rotating object different from the rotating object in which the first receiving unit is provided are provided. the mobile object to determine whether there is a connection setup that is movable between a second receiving portion (D) It is determined whether or not the first receiving unit and the second receiving unit determined to have connection settings in step (c) have a predetermined relationship as a result of rotating the rotating object in step (b). (E) When it is determined in step (d) that the predetermined relationship has been established, the game image is updated so that the moving object is moved from the first receiving unit to the second receiving unit.

第7ないし第9の発明においても、第1の発明と同様に、斬新なパズルゲームを提供することができる。 In the seventh to ninth inventions as well, as in the first invention, a novel puzzle game can be provided.

この発明によれば、受容部が設けられた複数の回転オブジェクトを回転させることによって、或る回転オブジェクトの受容部に受容されている移動オブジェクトを他の回転オブジェクトの受容部に移動させるので、斬新なパズルゲームを提供することができる。   According to the present invention, by rotating a plurality of rotating objects provided with receiving portions, a moving object received by a receiving portion of a certain rotating object is moved to a receiving portion of another rotating object. Puzzle game can be provided.

この発明の上述の目的,その他の目的,特徴および利点は、図面を参照して行う以下の実施例の詳細な説明から一層明らかとなろう。   The above object, other objects, features and advantages of the present invention will become more apparent from the following detailed description of embodiments with reference to the drawings.

図1を参照して、この発明の実施例であるゲーム装置10は、後述するように、パズルゲームプログラムを記憶することにより、パズルゲーム装置として機能する。このゲーム装置10は、第1の液晶表示器(LCD)12および第2のLCD14を含む。LCD12およびLCD14は、所定の配置位置となるようにハウジング16に収納される。この実施例では、ハウジング16は、上側ハウジング16aと下側ハウジング16bとによって構成され、LCD12は上側ハウジング16aに収納され、LCD14は下側ハウジング16bに収納される。したがって、LCD12とLCD14とは縦(上下)に並ぶように近接して配置される。   Referring to FIG. 1, a game apparatus 10 according to an embodiment of the present invention functions as a puzzle game apparatus by storing a puzzle game program as will be described later. The game apparatus 10 includes a first liquid crystal display (LCD) 12 and a second LCD 14. The LCD 12 and the LCD 14 are accommodated in the housing 16 so as to be in a predetermined arrangement position. In this embodiment, the housing 16 includes an upper housing 16a and a lower housing 16b. The LCD 12 is stored in the upper housing 16a, and the LCD 14 is stored in the lower housing 16b. Therefore, the LCD 12 and the LCD 14 are arranged close to each other so as to be arranged vertically (up and down).

なお、この実施例では、表示器としてLCDを用いるようにしてあるが、LCDに代えて、EL(Electronic Luminescence)ディスプレイやプラズマディスプレイを用いるようにしてもよい。   In this embodiment, an LCD is used as the display, but an EL (Electronic Luminescence) display or a plasma display may be used instead of the LCD.

図1からも分かるように、上側ハウジング16aは、LCD12の平面形状よりも少し大きな平面形状を有し、一方主面からLCD12の表示面を露出するように開口部が形成される。一方、下側ハウジング16bは、その平面形状が上側ハウジング16aと略同じであり、その略中央部にLCD14の表示面を露出するように開口部が形成される。下側ハウジング16bのLCD14の左方には電源スイッチ18が設けられる。   As can be seen from FIG. 1, the upper housing 16a has a planar shape slightly larger than the planar shape of the LCD 12, and an opening is formed so as to expose the display surface of the LCD 12 from one main surface. On the other hand, the lower housing 16b has substantially the same planar shape as the upper housing 16a, and an opening is formed at the substantially central portion so as to expose the display surface of the LCD. A power switch 18 is provided on the left side of the LCD 14 of the lower housing 16b.

また、上側ハウジング16aには、LCD12を挟んで左右に、スピーカ36aおよび36b(図2)のための音抜き孔20aおよび20bが形成される。そして、下側ハウジング16bには、マイク(図示せず)のためのマイク孔20cが形成されるとともに、操作スイッチ22(22a,22b,22c,22d,22e,22Lおよび22R)が設けられる。   Further, sound release holes 20a and 20b for speakers 36a and 36b (FIG. 2) are formed in the upper housing 16a on the left and right sides of the LCD 12. The lower housing 16b is provided with a microphone hole 20c for a microphone (not shown) and operation switches 22 (22a, 22b, 22c, 22d, 22e, 22L and 22R).

また、上側ハウジング16aと下側ハウジング16bとは、上側ハウジング16aの下辺(下端)と下側ハウジング16bの上辺(上端)の一部とが回動可能に連結されている。したがって、たとえば、ゲームをプレイしない場合には、LCD12の表示面とLCD14の表示面とが対面するように、上側ハウジング16aを回動させて折りたたんでおけば、LCD12の表示面およびLCD14の表示面に傷がつくなどの破損を防止することができる。ただし、上側ハウジング16aと下側ハウジング16bとは、回動可能に連結せずに、それらを一体的(固定的)に設けたハウジング16を形成するようにしてもよい。   The upper housing 16a and the lower housing 16b are rotatably connected to the lower side (lower end) of the upper housing 16a and a part of the upper side (upper end) of the lower housing 16b. Therefore, for example, when the game is not played, if the upper housing 16a is rotated and folded so that the display surface of the LCD 12 and the display surface of the LCD 14 face each other, the display surface of the LCD 12 and the display surface of the LCD 14 are displayed. Damage such as scratches can be prevented. However, the upper housing 16a and the lower housing 16b may be formed as a housing 16 in which they are integrally (fixed) provided without being rotatably connected.

操作スイッチ22は、方向指示スイッチ(十字スイッチ)22a,スタートスイッチ22b、セレクトスイッチ22c、動作スイッチ(Aボタン)22d、動作スイッチ(Bボタン)22e、動作スイッチ(Xボタン)22f、動作スイッチ(Yボタン)22g、動作スイッチ(Lボタン)22Lおよび動作スイッチ(Rボタン)22Rを含む。スイッチ22aは、下側ハウジング16bの一方主面であり、LCD14の左側に配置される。その他のスイッチ22b−22gは、下側ハウジング16bの一方主面であり、LCD14の右側に配置される。さらに、スイッチ22Lおよびスイッチ22Rは、それぞれ、上側ハウジング16aとの連結部を挟む下側ハウジング16bの上側面の左右角部に配置される。   The operation switch 22 includes a direction switch (cross switch) 22a, a start switch 22b, a select switch 22c, an operation switch (A button) 22d, an operation switch (B button) 22e, an operation switch (X button) 22f, and an operation switch (Y Button) 22g, an operation switch (L button) 22L, and an operation switch (R button) 22R. The switch 22 a is one main surface of the lower housing 16 b and is disposed on the left side of the LCD 14. The other switches 22b-22g are disposed on the right side of the LCD 14 on one main surface of the lower housing 16b. Furthermore, the switch 22L and the switch 22R are respectively disposed at the left and right corners on the upper side surface of the lower housing 16b that sandwich the connecting portion with the upper housing 16a.

方向指示スイッチ22aは、ディジタルジョイスティックとして機能し、4つの押圧部の1つを操作することによって、ユーザないしプレイヤによって操作可能なプレイヤキャラクタ(またはプレイヤオブジェクト)の移動方向を指示したり、カーソルの移動方向を指示したりする等に用いられる。また、各押圧部には、特定の役割を割り当てることができ、4つの押圧部の1つを操作することによって、割り当てられた役割を指示(指定)することができる。   The direction indicating switch 22a functions as a digital joystick, and operates one of the four pressing portions to instruct the moving direction of the player character (or player object) that can be operated by the user or the player, or to move the cursor. It is used to indicate the direction. Moreover, a specific role can be assigned to each pressing part, and the assigned role can be instructed (designated) by operating one of the four pressing parts.

スタートスイッチ22bは、プッシュボタンで構成され、ゲームを開始(再開)したり、一時停止(Pause)したりする等に用いられる。また、セレクトスイッチ22cは、プッシュボタンで構成され、ゲームモードの選択等に用いられる。   The start switch 22b includes a push button, and is used to start (resume) a game, pause (pause), and the like. The select switch 22c is formed of a push button and is used for selecting a game mode.

動作スイッチ22dすなわちAボタンは、プッシュボタンで構成され、方向指示以外の動作、すなわち、プレイヤキャラクタに打つ(パンチ)、投げる、つかむ(取得)、乗る、ジャンプするなどの任意のアクションをさせることができる。たとえば、アクションゲームにおいては、ジャンプ、パンチ、武器を動かす等を指示することができる。また、ロールプレイングゲーム(RPG)やシミュレーションRPGにおいては、アイテムの取得、武器やコマンドの選択および決定等を指示することができる。動作スイッチ22eすなわちBボタンは、プッシュボタンで構成され、セレクトスイッチ22cで選択したゲームモードの変更やAボタン22dで決定したアクションの取り消し等のために用いられる。   The action switch 22d, that is, the A button is configured by a push button, and allows the player character to perform an arbitrary action such as hitting (punching), throwing, grabbing (acquiring), riding, jumping, etc. other than the direction instruction. it can. For example, in an action game, it is possible to instruct to jump, punch, move a weapon, and the like. In the role playing game (RPG) and the simulation RPG, it is possible to instruct acquisition of items, selection and determination of weapons and commands, and the like. The operation switch 22e, that is, the B button is constituted by a push button, and is used for changing the game mode selected by the select switch 22c, canceling the action determined by the A button 22d, or the like.

動作スイッチ22fすなわちXボタン、および動作スイッチ22gすなわちYボタンは、プッシュボタンで構成され、Aボタン22dとBボタン22eだけでは、ゲーム進行ができないときに、補助的な操作に用いられる。ただし、Xボタン22fおよびYボタン22gは、Aボタン22dおよびBボタン22eと同様の操作に用いることも可能である。もちろん、ゲームプレイにおいてXボタン22fとYボタン22gとを必ずしも使用しなくてよい。   The operation switch 22f, that is, the X button, and the operation switch 22g, that is, the Y button are configured by push buttons, and are used for auxiliary operations when the game cannot be progressed with only the A button 22d and the B button 22e. However, the X button 22f and the Y button 22g can be used for the same operation as the A button 22d and the B button 22e. Of course, the X button 22f and the Y button 22g are not necessarily used in the game play.

動作スイッチ22L(左押しボタン)および動作スイッチ22R(右押しボタン)は、プッシュボタンで構成され、左押しボタン(Lボタン)22Lおよび右押しボタン(Rボタン)22Rは、Aボタン22dおよびBボタン22eと同様の操作に用いることができ、また、Aボタン22dおよびBボタン22eの補助的な操作に用いることができる。さらに、Lボタン22LおよびRボタン22Rは、方向スイッチ22a、Aボタン22d,Bボタン22e,Xボタン22f,Yボタン22gに割り当てられた役割を、他の役割に変更することができる。   The operation switch 22L (left push button) and the operation switch 22R (right push button) are configured by push buttons, and the left push button (L button) 22L and the right push button (R button) 22R are an A button 22d and a B button. It can be used for the same operation as 22e, and can be used for an auxiliary operation of the A button 22d and the B button 22e. Further, the L button 22L and the R button 22R can change the roles assigned to the direction switch 22a, the A button 22d, the B button 22e, the X button 22f, and the Y button 22g to other roles.

また、LCD14の上面には、タッチパネル24が装着される。タッチパネル24としては、たとえば、抵抗膜方式、光学式(赤外線方式)および静電容量結合式のいずれかの種類のものを用いることができる。また、タッチパネル24は、その上面をスティック26ないしはペン(スタイラスペン)或いは指(以下、これらを「スティック26等」という場合がある。)で、押圧したり、撫でたり、触れたりすることにより操作(タッチ操作)すると、スティック26等の操作位置の座標を検出して、検出した座標(検出座標)に対応する座標データを出力する。   A touch panel 24 is attached to the upper surface of the LCD 14. As the touch panel 24, for example, any of a resistive film type, an optical type (infrared type), and a capacitive coupling type can be used. The touch panel 24 is operated by pressing, stroking, or touching the upper surface of the touch panel 24 with a stick 26 or a pen (stylus pen) or a finger (hereinafter may be referred to as “stick 26 etc.”). When (touch operation) is performed, the coordinates of the operation position of the stick 26 and the like are detected, and coordinate data corresponding to the detected coordinates (detected coordinates) is output.

なお、この実施例では、LCD14(LCD12も同じ、または略同じ。)の表示面の解像度は256dot×192dotであり、タッチパネル24の検出精度も表示画面に対応して256dot×192dotとしてあるが、タッチパネル24の検出精度は表示画面の解像度よりも低くてもよく、高くてもよい。   In this embodiment, the resolution of the display surface of the LCD 14 (the LCD 12 is the same or substantially the same) is 256 dots × 192 dots, and the detection accuracy of the touch panel 24 is 256 dots × 192 dots corresponding to the display screen. The detection accuracy of 24 may be lower or higher than the resolution of the display screen.

LCD12およびLCD14には異なるゲーム画面が表示されてもよい。たとえば、レースゲームでは一方のLCDに運転席からの視点による画面を表示し、他方のLCDにレース(コース)全体の画面を表示することができる。また、RPGでは、一方のLCDにマップやプレイヤキャラクタ等のキャラクタを表示し、他方のLCDにプレイヤキャラクタが所有するアイテムを表示することができる。さらに、一方のLCD(この実施例では、LCD14)にゲームの操作画面(ゲーム画面)を表示し、他方のLCD(この実施例では、LCD12)に当該ゲームに関する情報(得点やレベルなど)を含む他のゲーム画面を表示することができる。さらには、2つのLCD12およびLCD14を合わせて1つの画面として用いることにより、プレイヤキャラクタが倒さなければならない巨大な怪物(敵キャラクタ)を表示することもできる。   Different game screens may be displayed on the LCD 12 and the LCD 14. For example, in a racing game, a screen from the viewpoint of the driver's seat can be displayed on one LCD, and the entire race (course) screen can be displayed on the other LCD. In RPG, a character such as a map or a player character can be displayed on one LCD, and an item owned by the player character can be displayed on the other LCD. Further, a game operation screen (game screen) is displayed on one LCD (LCD 14 in this embodiment), and information (scores, levels, etc.) relating to the game is included on the other LCD (LCD 12 in this embodiment). Other game screens can be displayed. Furthermore, by using the two LCDs 12 and 14 together as one screen, it is possible to display a huge monster (enemy character) that the player character must defeat.

したがって、プレイヤはスティック26等でタッチパネル24を操作することにより、LCD14の画面に表示されるプレイヤキャラクタ、敵キャラクタ、アイテムキャラクタ、操作オブジェクトなどの画像を指示(操作)したり、コマンドを選択(入力)したりすることができる。また、3次元ゲーム空間に設けられる仮想カメラ(視点)の方向(視線の向き)を変化させたり、ゲーム画面(マップ)のスクロール(徐々に移動表示)方向を指示したりすることもできる。   Accordingly, by operating the touch panel 24 with the stick 26 or the like, the player instructs (operates) images such as player characters, enemy characters, item characters, and operation objects displayed on the screen of the LCD 14, and selects (inputs) commands. ). It is also possible to change the direction (the direction of the line of sight) of the virtual camera (viewpoint) provided in the three-dimensional game space, or to instruct the scroll (gradual movement display) direction of the game screen (map).

なお、ゲームの種類によっては、タッチパネル24を用いることにより、その他の入力指示も可能である。たとえば、座標入力指示を入力したり、LCD14において文字,数字,記号等を手書き入力したりすることができる。   Depending on the type of game, other input instructions can be given by using the touch panel 24. For example, a coordinate input instruction can be input, or characters, numbers, symbols, and the like can be input on the LCD 14 by handwriting.

このように、ゲーム装置10は、2画面分の表示部となるLCD12およびLCD14を有し、いずれか一方(この実施例では、LCD14)の上面にタッチパネル24が設けられるので、2画面(12,14)と2系統の操作部(22,24)とを有する構成になっている。   As described above, the game apparatus 10 includes the LCD 12 and the LCD 14 serving as a display unit for two screens, and the touch panel 24 is provided on the upper surface of either one (in this embodiment, the LCD 14). 14) and two operation units (22, 24).

また、この実施例では、スティック26は、たとえば下側ハウジング16bに設けられる収納部(図1では点線で示す)に収納することができ、必要に応じて取り出される。ただし、スティック26を設けない場合には、その収納部も設ける必要はない。   Further, in this embodiment, the stick 26 can be housed in, for example, a housing portion (shown by a dotted line in FIG. 1) provided in the lower housing 16b, and taken out as necessary. However, when the stick 26 is not provided, it is not necessary to provide the storage portion.

さらに、ゲーム装置10はメモリカード(またはカートリッジ)28を含み、このメモリカード28は着脱自在であり、下側ハウジング16bの裏面ないしは下端(底面)に設けられる挿入部30(図1では点線で示す)に挿入される。図1では省略するが、挿入部30の奥部には、メモリカード28の挿入方向先端部に設けられるコネクタ(図示せず)と接合するためのコネクタ32(図2参照)が設けられており、したがって、メモリカード28が挿入部30に挿入されると、コネクタ同士が接合され、ゲーム装置10のCPUコア34(図2参照)がメモリカード28にアクセス可能となる。   Further, the game apparatus 10 includes a memory card (or cartridge) 28. The memory card 28 is detachable, and an insertion portion 30 (shown by a dotted line in FIG. 1) provided on the back surface or the lower end (bottom surface) of the lower housing 16b. ) Is inserted. Although not shown in FIG. 1, a connector 32 (see FIG. 2) for joining with a connector (not shown) provided at the distal end portion in the insertion direction of the memory card 28 is provided at the back of the insertion portion 30. Therefore, when the memory card 28 is inserted into the insertion portion 30, the connectors are joined together, and the CPU core 34 (see FIG. 2) of the game apparatus 10 can access the memory card 28.

なお、図1では表現できないが、上側ハウジング16aの音抜き孔20aおよび20bと対応する位置であり、この上側ハウジング16aの内部にはスピーカ36aおよび36b(図2参照)が設けられる。   Although not represented in FIG. 1, the position corresponds to the sound release holes 20a and 20b of the upper housing 16a, and speakers 36a and 36b (see FIG. 2) are provided inside the upper housing 16a.

また、図1では省略するが、たとえば、下側ハウジング16bの裏面側には、電池収容ボックスが設けられ、また、下側ハウジング16bの底面側には、音量スイッチ、外部拡張コネクタおよびイヤフォンジャックなどが設けられる。   Although not shown in FIG. 1, for example, a battery housing box is provided on the back surface side of the lower housing 16b, and a volume switch, an external expansion connector, an earphone jack, and the like are provided on the bottom surface side of the lower housing 16b. Is provided.

図2はゲーム装置10の電気的な構成を示すブロック図である。図2を参照して、ゲーム装置10は電子回路基板38を含み、この電子回路基板38には上述のCPUコア34等の回路コンポーネントが実装される。CPUコア34は、バス40を介して前述のコネクタ32に接続されるとともに、RAM42、第1のグラフィック処理ユニット(GPU)44、第2のGPU46、入出カインターフエース回路(以下、「I/F回路」という。)48およびLCDコントローラ50が接続される。   FIG. 2 is a block diagram showing an electrical configuration of the game apparatus 10. Referring to FIG. 2, game device 10 includes an electronic circuit board 38 on which circuit components such as CPU core 34 described above are mounted. The CPU core 34 is connected to the connector 32 via the bus 40, and also includes a RAM 42, a first graphics processing unit (GPU) 44, a second GPU 46, an input / output interface circuit (hereinafter referred to as “I / F”). 48) and the LCD controller 50 are connected.

コネクタ32には、上述したように、メモリカード28が着脱自在に接続される。メモリカード28は、ROM28aおよびRAM28bを含み、図示は省略するが、ROM28aおよびRAM28bは、互いにバスで接続され、さらに、コネクタ32と接合されるコネクタ(図示せず)に接続される。したがって、上述したように、CPUコア34は、ROM28aおよびRAM28bにアクセスすることができるのである。   As described above, the memory card 28 is detachably connected to the connector 32. The memory card 28 includes a ROM 28a and a RAM 28b. Although not shown, the ROM 28a and the RAM 28b are connected to each other via a bus and further connected to a connector (not shown) joined to the connector 32. Therefore, as described above, the CPU core 34 can access the ROM 28a and the RAM 28b.

ROM28aは、ゲーム装置10で実行すべきゲームのためのゲームプログラム、画像データ(文字やオブジェクトの画像、背景画像、アイテム画像、アイコン(ボタン)画像、メッセージ画像など)およびゲームに必要な音(音楽)のデータ(音データ)等を予め記憶する。RAM(バックアップRAM)28bは、そのゲームの途中データやゲームの結果データなどを記憶(セーブ)する。   The ROM 28a stores a game program for a game to be executed on the game apparatus 10, image data (character or object image, background image, item image, icon (button) image, message image, etc.), and sound (music) required for the game. ) Data (sound data) and the like are stored in advance. The RAM (backup RAM) 28b stores (saves) data in the middle of the game, game result data, and the like.

RAM42は、バッファメモリないしはワーキングメモリとして使用される。つまり、CPUコア34は、メモリカード28のROM28aに記憶されたゲームプログラム、画像データおよび音データ等をRAM42にロードし、ロードしたゲームプログラムを実行する。また、CPUコア34は、ゲームの進行に応じて一時的に発生するデータ(ゲームデータやフラグデータ)をRAM42に記憶しつつゲーム処理を実行する。   The RAM 42 is used as a buffer memory or a working memory. That is, the CPU core 34 loads the game program, image data, sound data, and the like stored in the ROM 28a of the memory card 28 into the RAM 42, and executes the loaded game program. Further, the CPU core 34 executes game processing while storing in the RAM 42 data (game data and flag data) that is temporarily generated in accordance with the progress of the game.

なお、ゲームプログラム、画像データおよび音データ等は、ROM28aから一度に全部、または部分的かつ順次的に読み出され、RAM42に記憶(ロード)される。   The game program, image data, sound data, and the like are read from the ROM 28a all at once or partially and sequentially and stored (loaded) in the RAM 42.

ただし、メモリカード28のROM28aには、ゲーム以外の他のアプリケーションについてのプログラムおよび当該アプリケーションの実行に必要な画像データが記憶される。また、必要に応じて、音(音楽)データが記憶されてもよい。かかる場合には、ゲーム装置10では、当該アプリケーションが実行される。   However, the ROM 28a of the memory card 28 stores a program for an application other than the game and image data necessary for executing the application. Further, sound (music) data may be stored as necessary. In such a case, the game device 10 executes the application.

GPU44およびGPU46は、それぞれ、描画手段の一部を形成し、たとえばシングルチップASICで構成され、CPUコア34からのグラフィックスコマンド(作画命令)を受け、そのグラフィックスコマンドに従って画像データを生成する。ただし、CPUコア34は、グラフィックスコマンドに加えて、画像データの生成に必要な画像生成プログラム(ゲームプログラムに含まれる。)をGPU44およびGPU46のそれぞれに与える。   Each of the GPU 44 and the GPU 46 forms part of a drawing unit, and is composed of, for example, a single chip ASIC, receives a graphics command (drawing command) from the CPU core 34, and generates image data according to the graphics command. However, the CPU core 34 gives each of the GPU 44 and the GPU 46 an image generation program (included in the game program) necessary for generating image data in addition to the graphics command.

また、GPU44には、第1のビデオRAM(以下、「VRAM」という。)52が接続され、GPU46には、第2のVRAM54が接続される。GPU44およびGPU46が作画コマンドを実行するにあたって必要なデータ(画像データ:ポリゴンやテクスチャ等のデータ)は、GPU44およびGPU46が、それぞれ、第1のVRAM52および第2のVRAM54にアクセスして取得する。   The GPU 44 is connected to a first video RAM (hereinafter referred to as “VRAM”) 52, and the GPU 46 is connected to a second VRAM 54. Data (image data: data such as polygons and textures) necessary for the GPU 44 and the GPU 46 to execute the drawing command is obtained by the GPU 44 and the GPU 46 accessing the first VRAM 52 and the second VRAM 54, respectively.

なお、CPUコア34は、描画に必要な画像データをGPU44およびGPU46を介して第1のVRAM52および第2のVRAM54に書き込む。GPU44はVRAM52にアクセスして描画のための画像データを作成し、GPU46はVRAM54にアクセスして描画のための画像データを作成する。   The CPU core 34 writes image data necessary for drawing into the first VRAM 52 and the second VRAM 54 via the GPU 44 and the GPU 46. The GPU 44 accesses the VRAM 52 to create image data for drawing, and the GPU 46 accesses the VRAM 54 to create image data for drawing.

VRAM52およびVRAM54は、LCDコントローラ50に接続される。LCDコントローラ50はレジスタ56を含み、レジスタ56はたとえば1ビットで構成され、CPUコア34の指示によって「0」または「1」の値(データ値)を記憶する。LCDコントローラ50は、レジスタ56のデータ値が「0」である場合には、GPU44によって作成された画像データをLCD12に出力し、GPU46によって作成された画像データをLCD14に出力する。また、LCDコントローラ50は、レジスタ56のデータ値が「1」である場合には、GPU44によって作成された画像データをLCD14に出力し、GPU46によって作成された画像データをLCD12に出力する。   The VRAM 52 and VRAM 54 are connected to the LCD controller 50. The LCD controller 50 includes a register 56. The register 56 is composed of, for example, 1 bit, and stores a value (data value) of “0” or “1” according to an instruction from the CPU core 34. When the data value of the register 56 is “0”, the LCD controller 50 outputs the image data created by the GPU 44 to the LCD 12, and outputs the image data created by the GPU 46 to the LCD 14. When the data value of the register 56 is “1”, the LCD controller 50 outputs the image data created by the GPU 44 to the LCD 14 and the image data created by the GPU 46 to the LCD 12.

なお、LCDコントローラ50は、VRAM52およびVRAM54から直接画像データを読み出したり、GPU44およびGPU46を介してVRAM52およびVRAM54から画像データを読み出したりする。   The LCD controller 50 reads image data directly from the VRAM 52 and VRAM 54, and reads image data from the VRAM 52 and VRAM 54 via the GPU 44 and GPU 46.

I/F回路48には、操作スイッチ22,タッチパネル24およびスピーカ36a,36bが接続される。ここで、操作スイッチ22は、上述したスイッチ22a,22b,22c,22d,22e,22g,22Lおよび22Rであり、操作スイッチ22が操作されると、対応する操作信号(操作データ)がI/F回路48を介してCPUコア34に入力される。また、タッチパネル24からの座標データがI/F回路48を介してCPUコア34に入力される。さらに、CPUコア34は、ゲーム音楽(BGM)、効果音またはゲームキャラクタの音声(擬制音)などのゲームに必要な音データをRAM42から読み出し、I/F回路48を介してスピーカ36a,36bから出力する。   The operation switch 22, the touch panel 24, and the speakers 36a and 36b are connected to the I / F circuit 48. Here, the operation switch 22 is the above-described switches 22a, 22b, 22c, 22d, 22e, 22g, 22L and 22R. When the operation switch 22 is operated, a corresponding operation signal (operation data) is I / F. The data is input to the CPU core 34 via the circuit 48. In addition, coordinate data from the touch panel 24 is input to the CPU core 34 via the I / F circuit 48. Further, the CPU core 34 reads out sound data necessary for the game such as game music (BGM), sound effects or sound of the game character (pseudo-sounding sound) from the RAM 42, and from the speakers 36 a and 36 b via the I / F circuit 48. Output.

図3は、図1および図2に示すゲーム装置10を用いて、この実施例の仮想ゲーム(パズルゲーム)をプレイする場合に、LCD12に表示されるゲーム画面300およびLCD14に表示されるゲーム画面320の一例を示す。ゲーム画面300は、回転オブジェクト(歯車オブジェクト)302、304、306を含む。3つの歯車オブジェクト302,304,306は、縦方向に一直線に並んで表示される。歯車オブジェクト302には、受容部としての2つのソケットオブジェクト302a,302bが設けられ(図5参照)、このソケットオブジェクト302a,302bに、ボールオブジェクト312a,312bが保持されている。歯車オブジェクト304には、2つのソケットオブジェクト304a,304bが設けられ(図5参照)、このソケットオブジェクト304a,304bに、ボールオブジェクト314a,314bが保持されている。歯車オブジェクト306には、2つのソケットオブジェクト306a,306bが設けられ(図5参照)、このソケットオブジェクト306a,306bに、ボールオブジェクト316a,316bが保持されている。   FIG. 3 shows a game screen 300 displayed on the LCD 12 and a game screen displayed on the LCD 14 when the virtual game (puzzle game) of this embodiment is played using the game apparatus 10 shown in FIGS. An example of 320 is shown. The game screen 300 includes rotating objects (gear objects) 302, 304, and 306. The three gear objects 302, 304, and 306 are displayed in a straight line in the vertical direction. The gear object 302 is provided with two socket objects 302a and 302b as receiving portions (see FIG. 5), and ball objects 312a and 312b are held in the socket objects 302a and 302b. The gear object 304 is provided with two socket objects 304a and 304b (see FIG. 5), and the ball objects 314a and 314b are held in the socket objects 304a and 304b. The gear object 306 is provided with two socket objects 306a and 306b (see FIG. 5), and the ball objects 316a and 316b are held in the socket objects 306a and 306b.

また、ゲーム画面320は、3つの歯車オブジェクト322,324,326を含み、3つの歯車オブジェクト322,324,326は縦方向に一直線に並んで表示される。歯車オブジェクト322には2つのソケットオブジェクト322a,322bが設けられ、歯車オブジェクト324には2つのソケットオブジェクト324a,324bが設けられ、そして、歯車オブジェクト326には2つのソケットオブジェクト326a,326bが設けられる。   The game screen 320 includes three gear objects 322, 324, and 326, and the three gear objects 322, 324, and 326 are displayed in a straight line in the vertical direction. The gear object 322 is provided with two socket objects 322a and 322b, the gear object 324 is provided with two socket objects 324a and 324b, and the gear object 326 is provided with two socket objects 326a and 326b.

ただし、図3に示すゲーム画面300およびゲーム画面320は単なる一例である。たとえば、ボールオブジェクト312a,312b,314a,314b,316a,316は、いずれのソケットオブジェクト302a,302b,304a,304b,306a,306b,322a,322b,324a,324b,326a,326bに保持されていてもよい。また、ゲーム画面300に表示される歯車オブジェクト302,304,306の配列およびゲーム画面320に表示される歯車オブジェクト322,324,326の配列は異なる配列であってもよい。   However, the game screen 300 and the game screen 320 shown in FIG. 3 are merely examples. For example, the ball objects 312a, 312b, 314a, 314b, 316a, 316 may be held by any socket object 302a, 302b, 304a, 304b, 306a, 306b, 322a, 322b, 324a, 324b, 326a, 326b. Good. Further, the arrangement of the gear objects 302, 304, and 306 displayed on the game screen 300 and the arrangement of the gear objects 322, 324, and 326 displayed on the game screen 320 may be different.

この実施例のパズルゲームについて簡単に説明すると、上述したように、LCD14上にはタッチパネル24が設けられ、プレイヤは、スティック26を用いて、歯車オブジェクト322,324,326上でスライド操作することにより、当該歯車オブジェクト322,324,326を回転させることができる。また、このとき、歯車オブジェクト322,324,326と連動する歯車オブジェクト302,304,306も回転される。図3に示す例では、歯車オブジェクト302と歯車オブジェクト322とが連動する。また、図示は省略するが、歯車オブジェクト304と歯車オブジェクト324とが連動する。さらに、図示は省略するが、歯車オブジェクト306と歯車オブジェクト326とが連動する。   The puzzle game of this embodiment will be briefly described. As described above, the touch panel 24 is provided on the LCD 14, and the player performs a sliding operation on the gear objects 322, 324, 326 using the stick 26. The gear objects 322, 324, and 326 can be rotated. At this time, the gear objects 302, 304, and 306 associated with the gear objects 322, 324, and 326 are also rotated. In the example shown in FIG. 3, the gear object 302 and the gear object 322 are linked. Although illustration is omitted, the gear object 304 and the gear object 324 are linked. Further, although not shown, the gear object 306 and the gear object 326 are interlocked.

たとえば、或る歯車オブジェクト(322,324,326)に対応する他の歯車オブジェクト(322,324,326)は、当該或る歯車オブジェクト(322,324,326)と同じ方向に回転してもよいし、逆方向に回転してもよい。また、この実施例では、回転量(回転角度)は同じにしてあるが、多くても、少なくてもよい。さらに、1つの歯車オブジェクト(322,324,326)に、2つ以上の歯車オブジェクト(302,304,306)を対応付けるようにしてもよい。これらは、このパズルゲームのプログラマないし開発者が自在に設定することができる。   For example, another gear object (322, 324, 326) corresponding to a certain gear object (322, 324, 326) may rotate in the same direction as the certain gear object (322, 324, 326). However, it may rotate in the opposite direction. In this embodiment, the rotation amount (rotation angle) is the same, but it may be more or less. Furthermore, two or more gear objects (302, 304, 306) may be associated with one gear object (322, 324, 326). These can be freely set by a programmer or developer of this puzzle game.

また、図3に示すように、ボールオブジェクト312a,312b,314a,314b,316a,316bには、色(図面の都合上、斜線模様、縞模様、網目模様で示してある)が付されており、同様に、歯車オブジェクト322,324,326のそれぞれにも、色が付されている。図3からも分かるように、ボールオブジェクト312a,312bおよび歯車オブジェクト322には、同じ色(図3では「斜線模様」)が付されている。また、ボールオブジェクト314a,314bおよび歯車オブジェクト324には、同じ色(図3では「縦縞模様」)が付されている。さらに、ボールオブジェクト316a,316bおよび歯車オブジェクト326には、同じ色(図3では「網目模様」)が付されている。   In addition, as shown in FIG. 3, the ball objects 312a, 312b, 314a, 314b, 316a, and 316b are provided with colors (shown as diagonal lines, striped patterns, or mesh patterns for convenience of drawing). Similarly, each of the gear objects 322, 324, and 326 is also colored. As can be seen from FIG. 3, the ball objects 312a and 312b and the gear object 322 are given the same color (“hatched pattern” in FIG. 3). The ball objects 314a and 314b and the gear object 324 are given the same color (“vertical stripe pattern” in FIG. 3). Further, the ball objects 316a and 316b and the gear object 326 are given the same color (“mesh pattern” in FIG. 3).

なお、この実施例では、歯車オブジェクト302,304,306,322,324,326のそれぞれには、2つのソケットオブジェクト302a,302b,304a,304b,306a,306b,322a,322b,324a,324b,326a,326bが設けられるようにしてある。しかし、これは単なる例示であり、1つの歯車オブジェクトには、少なくとも1つのソケットオブジェクトが設けられればよく、3つ以上設けるようにしてもよい。ただし、後述するように、歯車オブジェクトは所定角度(この実施例では、15度)毎に回転・停止可能とするため、この所定角度毎にソケットオブジェクトを設けたときの数が、ソケットオブジェクトの最大数となる。   In this embodiment, each of the gear objects 302, 304, 306, 322, 324, 326 includes two socket objects 302a, 302b, 304a, 304b, 306a, 306b, 322a, 322b, 324a, 324b, 326a. , 326b are provided. However, this is merely an example, and one gear object may be provided with at least one socket object, and three or more may be provided. However, as will be described later, since the gear object can be rotated and stopped at every predetermined angle (15 degrees in this embodiment), the number of socket objects provided at each predetermined angle is the maximum number of socket objects. Number.

上述したように、歯車オブジェクト322,324,326を回転させることにより、歯車オブジェクト302,304,306も回転される。隣接する歯車オブジェクト302,304,306,322,324,326のソケットオブジェクト302a,302b,304a,304b,306a,306b,322a,322b,324a,324b,326a,326bが所定の関係を満たすとき、ボールオブジェクト312a,312b,314a,314b,316a,316bは、当該所定の関係を満たす一方のソケットオブジェクトから他方のソケットオブジェクトへ移動する。   As described above, by rotating the gear objects 322, 324, and 326, the gear objects 302, 304, and 306 are also rotated. When the socket objects 302a, 302b, 304a, 304b, 306a, 306b, 322a, 322b, 324a, 324b, 326a, 326b of adjacent gear objects 302, 304, 306, 322, 324, 326 satisfy a predetermined relationship, the ball The objects 312a, 312b, 314a, 314b, 316a, and 316b move from one socket object that satisfies the predetermined relationship to the other socket object.

たとえば、図4(A)に示すように、ゲーム画面320において、歯車オブジェクト322のソケットオブジェクト322bには、ボールオブジェクト314a(または314b)が保持されており、この歯車オブジェクト322がプレイヤのタッチ操作によって回転される。すると、図4(B)に示すように、歯車オブジェクト322のソケットオブジェクト322bと、歯車オブジェクト324のソケットソケットオブジェクト324bとが一直線上に並ぶ。このとき、ボールオブジェクト314a(または314b)は、ソケットオブジェクト322a(または322b)からソケットオブジェクト324a(または324b)に移動する。つまり、ボールオブジェクト314a(または314b)は、歯車オブジェクト322から歯車オブジェクト324に移動される。   For example, as shown in FIG. 4A, in the game screen 320, the ball object 314a (or 314b) is held in the socket object 322b of the gear object 322, and this gear object 322 is moved by a player's touch operation. It is rotated. Then, as shown in FIG. 4B, the socket object 322b of the gear object 322 and the socket socket object 324b of the gear object 324 are aligned on a straight line. At this time, the ball object 314a (or 314b) moves from the socket object 322a (or 322b) to the socket object 324a (or 324b). That is, the ball object 314a (or 314b) is moved from the gear object 322 to the gear object 324.

このようにして、ボールオブジェクト312a,312b,314a,314b,316a,316bを移動させ、図5に示すように、ボールオブジェクト312a,312b,314a,314b,316a,316bの各々が、同じ色の付された歯車オブジェクト322,324,326に移動されると、パズルゲームがクリアとなる。   In this way, the ball objects 312a, 312b, 314a, 314b, 316a, and 316b are moved, and as shown in FIG. 5, each of the ball objects 312a, 312b, 314a, 314b, 316a, and 316b has the same color. When the gear objects 322, 324, and 326 are moved, the puzzle game is cleared.

詳細な説明は省略するが、ゲーム画面300とゲーム画面320とは連結されており、歯車オブジェクト306から歯車オブジェクト322に向けて、ボールオブジェクト312a,312b,314a,314b,316a,316bを移動させることができる。つまり、通常の場合、ボールオブジェクト312a,312b,314a,314b,316a,316bは、ゲーム画面300の上部からゲーム画面320の下部に向けて移動される。ただし、歯車オブジェクト326から歯車オブジェクト302にボールオブジェクト312a,312b,314a,314b,316a,316bを移動させることもできる。これは、ボールオブジェクト312a,312b,314a,314b,316a,316bが移動不能になり、いわゆる「手詰まり」になるのを防止するためである。ただし、ゲームのレベル等によっては、下のゲーム画面320から上のゲーム画面300に向けて、ボールオブジェクト312a,312b,314a,314b,316a,316bを移動させないようにしてもよい。   Although detailed description is omitted, the game screen 300 and the game screen 320 are connected, and the ball objects 312a, 312b, 314a, 314b, 316a, and 316b are moved from the gear object 306 toward the gear object 322. Can do. That is, in a normal case, the ball objects 312 a, 312 b, 314 a, 314 b, 316 a, and 316 b are moved from the upper part of the game screen 300 toward the lower part of the game screen 320. However, the ball objects 312a, 312b, 314a, 314b, 316a, and 316b can be moved from the gear object 326 to the gear object 302. This is to prevent the ball objects 312a, 312b, 314a, 314b, 316a, and 316b from moving and becoming so-called “hand clogged”. However, the ball objects 312a, 312b, 314a, 314b, 316a, and 316b may not be moved from the lower game screen 320 toward the upper game screen 300 depending on the game level or the like.

以下、図面を用いて、歯車オブジェクト302,304,306,322,324,326の回転、ソケットオブジェクト302a,302b,304a,304b,306a,306b,322a,322b,324a,324b,326a,326b同士の所定の関係、ボールオブジェクト312a,312b,314a、314b,316a,316bの移動について、具体的に説明することにする。   Hereinafter, with reference to the drawings, the rotation of the gear objects 302, 304, 306, 322, 324, 326, the socket objects 302a, 302b, 304a, 304b, 306a, 306b, 322a, 322b, 324a, 324b, 326a, 326b The predetermined relationship and the movement of the ball objects 312a, 312b, 314a, 314b, 316a, and 316b will be specifically described.

図6を参照して、プレイヤの操作(タッチ操作)に従った歯車オブジェクト322,324,326の回転(回転量の算出方法)について説明する。なお、図6では、簡単のため、ソケットオブジェクト322a,322b,324a,324b,326a,326bおよびボールオブジェクト312a,312b,314a,314b,316a,316bは省略してある。   With reference to FIG. 6, the rotation of the gear objects 322, 324, and 326 according to the player's operation (touch operation) (a method for calculating the rotation amount) will be described. In FIG. 6, the socket objects 322a, 322b, 324a, 324b, 326a, 326b and the ball objects 312a, 312b, 314a, 314b, 316a, 316b are omitted for simplicity.

図6に示すように、歯車オブジェクト302,304,306,322,324,326上でタッチ操作(スライド操作)を実行したと仮定する。ただし、f0は現在のフレーム(現フレーム)のタッチ位置であり、f1は、その1つ手前のフレーム(直前フレーム)のタッチ位置である。また、フレームは画面更新単位時間(この実施例では、1/60秒)である。このタッチ操作に応じて、歯車オブジェクト322,324,326の中心cを中心とする当該歯車オブジェクト322,324,326の回転量Lが算出される。   As shown in FIG. 6, it is assumed that a touch operation (slide operation) is performed on the gear objects 302, 304, 306, 322, 324, and 326. However, f0 is the touch position of the current frame (current frame), and f1 is the touch position of the previous frame (immediate frame). A frame is a screen update unit time (in this embodiment, 1/60 second). In response to this touch operation, the rotation amount L of the gear objects 322, 324, 326 about the center c of the gear objects 322, 324, 326 is calculated.

まず、歯車オブジェクト322,324,326の中心cの座標(中心座標)と現フレームのタッチ位置(タッチ座標)f0とからベクトルV0が求められる。ただし、ベクトルV0は、中心座標が始点であり、タッチ位置f0が終点である。次に、このベクトルV0を正規化したベクトルU0が求められる。ベクトルU0は、ベクトルV0の単位ベクトルである。続いて、現フレームのタッチ座標f0に対応する歯車オブジェクト322,324,326の円周上の位置r0が数1に従って求められる。   First, a vector V0 is obtained from the coordinates (center coordinates) of the center c of the gear objects 322, 324, and 326 and the touch position (touch coordinates) f0 of the current frame. However, the vector V0 has a center coordinate as a start point and a touch position f0 as an end point. Next, a vector U0 obtained by normalizing the vector V0 is obtained. The vector U0 is a unit vector of the vector V0. Subsequently, the position r0 on the circumference of the gear objects 322, 324, and 326 corresponding to the touch coordinate f0 of the current frame is obtained according to Equation 1.

[数1]
r0=|f0−c|×r+c
ただし、|f0−c|は、ベクトルV0(=f0−c)を正規化した単位ベクトルU0である。
[Equation 1]
r0 = | f0−c | × r + c
However, | f0-c | is a unit vector U0 obtained by normalizing the vector V0 (= f0-c).

同様に、直前フレームのタッチ位置f1に対応する歯車オブジェクト322,324,326の円周上の位置r1が数2に従って求められる。   Similarly, the position r1 on the circumference of the gear objects 322, 324, 326 corresponding to the touch position f1 of the immediately preceding frame is obtained according to Equation 2.

[数2]
r1=|f1−c|×r+c
ただし、|f1−c|は、ベクトルV1(=f1−c)を正規化した単位ベクトルを意味する。
[Equation 2]
r1 = | f1-c | × r + c
However, | f1-c | means a unit vector obtained by normalizing the vector V1 (= f1-c).

また、数1および数2に従って求められた円周上の位置(位置座標)r0と位置r1とから、ベクトルrVが求められる。このベクトルrVは、位置r1を始点とし、位置r0を終点とする。そして、数3に従って、歯車オブジェクト322,324,326の回転量Lが求められる。   Further, a vector rV is obtained from the position (positional coordinates) r0 and position r1 on the circumference obtained according to Equation 1 and Equation 2. The vector rV has a position r1 as a start point and a position r0 as an end point. Then, the rotation amount L of the gear objects 322, 324, and 326 is obtained according to Equation 3.

[数3]
L=(U0x×(−rVy))+(U0y×rVx)×k
(0<k<1)
ただし、U0xはベクトルU0のX成分であり、U0yはベクトルU0のY成分であり、rVxはベクトルrVのX成分であり、そして、rVyはベクトルrVのY成分である。
[Equation 3]
L = (U0x × (−rVy)) + (U0y × rVx) × k
(0 <k <1)
However, U0x is the X component of the vector U0, U0y is the Y component of the vector U0, rVx is the X component of the vector rV, and rVy is the Y component of the vector rV.

このようにして算出された回転量Lに従って、歯車オブジェクト322,324,326は回転(回転表示)され、これに伴って、それらと連動する歯車オブジェクト302,304,306も回転される。ただし、この実施例では、時計周りが正の回転方向であり、反時計周りが負の回転方向である。   The gear objects 322, 324, and 326 are rotated (rotated and displayed) according to the rotation amount L calculated in this way, and the gear objects 302, 304, and 306 associated with them are also rotated. However, in this embodiment, the clockwise direction is the positive rotation direction, and the counterclockwise direction is the negative rotation direction.

ここで、図7に示すように、ボールオブジェクトおよび不可視ソケットオブジェクトは、ゲーム画面300およびゲーム画面320を表示するときに、それぞれの角度オフセット値に従って配置される。この実施例では、基準位置ないし基準方向は、歯車オブジェクト302,304,306,322,324,326および後述する不可視歯車オブジェクト402,404,406,422,424,426(図8参照)の上方向である。この上方向を0度とした場合の角度オフセット値がそれぞれ設定されるのである。   Here, as shown in FIG. 7, when the game screen 300 and the game screen 320 are displayed, the ball object and the invisible socket object are arranged according to the respective angle offset values. In this embodiment, the reference position or reference direction is the upward direction of the gear objects 302, 304, 306, 322, 324, 326 and invisible gear objects 402, 404, 406, 422, 424, 426 (see FIG. 8) described later. It is. The angle offset value when the upward direction is 0 degree is set.

ただし、図7において、baは、歯車オブジェクトのソケットオブジェクトに保持されるボールオブジェクトの角度オフセット値であり、s´aは、当該歯車オブジェクトに対応して設けられる不可視歯車オブジェクトの角度オフセット値である。また、この実施例では、基準位置に対する左方向(反時計周り)の回転角度のオフセット値をマイナスで示し、逆に、基準位置に対する右方向(時計周り)の回転角度のオフセット値をプラスで示してある。つまり、角度オフセット値は、−180度から+180度の間で設定される。   In FIG. 7, ba is the angle offset value of the ball object held in the socket object of the gear object, and s′a is the angle offset value of the invisible gear object provided corresponding to the gear object. . In this embodiment, the offset value of the rotation angle in the left direction (counterclockwise) with respect to the reference position is indicated by minus, and conversely, the offset value of the rotation angle in the right direction (clockwise) with respect to the reference position is indicated by plus. It is. That is, the angle offset value is set between −180 degrees and +180 degrees.

また、歯車オブジェクト302,304,306,322,324,326は、プレイヤの操作に従って回転され、これに従ってボールオブジェクト312a,312b,314a,314b,316a,316bも回転される。このため、歯車オブジェクト302,304,306,322,324,326およびボールオブジェクト312a,312b,314a,314b,316a,316bの角度オフセット値は、回転される度にそのオフセット値が更新される。   The gear objects 302, 304, 306, 322, 324, and 326 are rotated according to the player's operation, and the ball objects 312a, 312b, 314a, 314b, 316a, and 316b are also rotated accordingly. Therefore, the angle offset values of the gear objects 302, 304, 306, 322, 324, 326 and the ball objects 312a, 312b, 314a, 314b, 316a, 316b are updated each time the gear objects are rotated.

したがって、歯車オブジェクト302,304,306,322,324,326を回転させる場合には、上述のようにして算出された回転量Lにオフセット値が加算され、隣接する歯車オブジェクトに設けられるソケットオブジェクト同士の位置関係(後述する角度差A)が判断される。また、同様に、ボールオブジェクトと当該ボールオブジェクトが設けられる歯車オブジェクトに隣接する歯車オブジェクトに対して設けられる不可視ソケットオブジェクトとの位置関係(後述する角度差A´)が判断される。   Therefore, when the gear objects 302, 304, 306, 322, 324, and 326 are rotated, an offset value is added to the rotation amount L calculated as described above, and socket objects provided in adjacent gear objects are connected to each other. Is determined (angle difference A described later). Similarly, the positional relationship (angle difference A ′ described later) between the ball object and the invisible socket object provided for the gear object adjacent to the gear object provided with the ball object is determined.

ただし、後述するように、不可視歯車オブジェクトは回転しないため、これに設けられる不可視のソケットオブジェクト(不可視ソケットオブジェクト)については、角度オフセット値のみを考慮すればよく、回転量については考慮する必要がない。   However, as will be described later, since the invisible gear object does not rotate, only the angle offset value needs to be considered for the invisible socket object (invisible socket object) provided therein, and the amount of rotation need not be considered. .

また、この実施例では、歯車オブジェクト302,304,306,322,324,326は、回転量Lだけ回転するようにしてあるが、所定の角度毎に回転・停止するように、回転後の位置を補正するようにしてもよい。たとえば、回転量Lに従うソケットオブジェクト302a,302b,34a,304b,306a,306b,322a,322b,324a,324b,326a,326bの回転角度が所定角度の整数倍±7.5であれば、当該整数倍の角度になるように回転量Lが調整される。   In this embodiment, the gear objects 302, 304, 306, 322, 324, and 326 are rotated by the rotation amount L, but the position after rotation is set so as to rotate and stop at every predetermined angle. May be corrected. For example, if the rotation angle of the socket object 302a, 302b, 34a, 304b, 306a, 306b, 322a, 322b, 324a, 324b, 326a, 326b according to the rotation amount L is an integral multiple of a predetermined angle ± 7.5, the integer The rotation amount L is adjusted so that the angle is doubled.

たとえば、回転量Lが37度である場合には、15度×2(30度)+7度であるため、このときの回転量Lは30度に調整される。また、回転量Lが55度である場合には、15×4(60度)−5度であるため、このときの回転量Lは60度に調整される。   For example, when the rotation amount L is 37 degrees, it is 15 degrees × 2 (30 degrees) +7 degrees, so the rotation amount L at this time is adjusted to 30 degrees. Further, when the rotation amount L is 55 degrees, it is 15 × 4 (60 degrees) −5 degrees, so the rotation amount L at this time is adjusted to 60 degrees.

次に、ソケットオブジェクト302a,302b,304a,304b,306a,306b,322a,322b,324a,324b,326a,326b同士の所定の関係について説明する。   Next, the predetermined relationship between the socket objects 302a, 302b, 304a, 304b, 306a, 306b, 322a, 322b, 324a, 324b, 326a, 326b will be described.

図8(A)および図8(B)に示すように、ゲーム画面300およびゲーム画面320に対して、歯車オブジェクトのそれぞれに対応する不可視歯車オブジェクトが配置されたレイヤ400およびレイヤ420が設けられる。図示は省略するが、ゲーム画面300およびゲーム画面320についてのゲーム画像が描画されたレイヤの下側すなわち視点から見て奥に、レイヤ400およびレイヤ420は配置されるため、レイヤ400およびレイヤ420がゲーム画面300およびゲーム画面320に表示されることはない。ただし、後述する不可視歯車オブジェクトや不可視ソケットオブジェクトを透明にし、これらが配置されるレイヤも透明にする場合には、レイヤ400および420はゲーム画面300やゲーム画面320のゲーム画像が描画されるレイヤよりも手前(視点側)に配置されるようにしてもよい。   As shown in FIGS. 8A and 8B, the game screen 300 and the game screen 320 are provided with a layer 400 and a layer 420 in which invisible gear objects corresponding to the respective gear objects are arranged. Although illustration is omitted, since the layer 400 and the layer 420 are arranged below the layer on which the game images of the game screen 300 and the game screen 320 are drawn, that is, behind the viewpoint, the layer 400 and the layer 420 are arranged. It is not displayed on the game screen 300 and the game screen 320. However, when invisible gear objects and invisible socket objects, which will be described later, are made transparent and the layers on which they are arranged are also made transparent, the layers 400 and 420 are from the layers on which the game images of the game screen 300 and the game screen 320 are drawn. May be arranged in front (viewpoint side).

図8(A)に示すように、レイヤ400には、歯車オブジェクト302,304,306のそれぞれに対応して、不可視の円盤オブジェクト(以下、「不可視歯車オブジェクト」ということにする)402,404,406が設けられる。不可視歯車オブジェクト402には、不可視ソケットオブジェクト402a,402bが設けられ、不可視歯車オブジェクト404には、不可視ソケットオブジェクト404a,404bが設けられ、不可視歯車オブジェクト406には、不可視ソケットオブジェクト406a,406bが設けられる。   As shown in FIG. 8A, in the layer 400, invisible disk objects (hereinafter referred to as “invisible gear objects”) 402, 404, 404, 306 corresponding to the gear objects 302, 304, 306, respectively. 406 is provided. The invisible gear object 402 is provided with invisible socket objects 402a and 402b, the invisible gear object 404 is provided with invisible socket objects 404a and 404b, and the invisible gear object 406 is provided with invisible socket objects 406a and 406b. .

また、図8(B)に示すように、レイヤ420には、歯車オブジェクト322,324,326のそれぞれに対応して、不可視歯車オブジェクト422,424,426が設けられる。不可視歯車オブジェクト422には、不可視ソケットオブジェクト422a,422bが設けられ、不可視歯車オブジェクト424には、不可視ソケットオブジェクト424a,424bが設けられ、不可視歯車オブジェクト426には、不可視ソケットオブジェクト426a,426bが設けられる。   Further, as shown in FIG. 8B, the layer 420 is provided with invisible gear objects 422, 424, and 426 corresponding to the gear objects 322, 324, and 326, respectively. The invisible gear object 422 is provided with invisible socket objects 422a and 422b, the invisible gear object 424 is provided with invisible socket objects 424a and 424b, and the invisible gear object 426 is provided with invisible socket objects 426a and 426b. .

不可視歯車オブジェクト402,404,406,422,424,426は、固定的に配置され、歯車オブジェクト302,304,306,322,324,326とは異なり、回転しない。したがって、不可視ソケットオブジェクト402a,402b,404a,404b,406a,406b,422a,422b,424a,424b,426a,426bの位置が変化することもない。   The invisible gear objects 402, 404, 406, 422, 424 and 426 are fixedly arranged and do not rotate unlike the gear objects 302, 304, 306, 322, 324 and 326. Therefore, the positions of the invisible socket objects 402a, 402b, 404a, 404b, 406a, 406b, 422a, 422b, 424a, 424b, 426a, and 426b do not change.

不可視歯車オブジェクト402,404,406,422,424,426および不可視ソケットオブジェクト402a,402b,404a,404b,406a,406b,422a,422b,424a,424b,426a,426bは、対応する歯車オブジェクト302,304,306,322,324,326のソケットオブジェクト302a,302b,304a,304b,306a,306b,322a,322b,324a,324b,326a,326bが所定の関係を有するか否かを判定するために設けられる。ただし、不可視ソケットオブジェクト402a,402b,404a,404b,406a,406b,422a,422b,424a,424b,426a,426bは、接続設定の有る歯車オブジェクト302,304,306,322,324,326に対応してのみ設けられる。   Invisible gear objects 402, 404, 406, 422, 424, 426 and invisible socket objects 402a, 402b, 404a, 404b, 406a, 406b, 422a, 422b, 424a, 424b, 426a, 426b correspond to corresponding gear objects 302, 304. , 306, 322, 324, 326 are provided to determine whether or not the socket objects 302a, 302b, 304a, 304b, 306a, 306b, 322a, 322b, 324a, 324b, 326a, 326b have a predetermined relationship. . However, the invisible socket objects 402a, 402b, 404a, 404b, 406a, 406b, 422a, 422b, 424a, 424b, 426a, 426b correspond to the gear objects 302, 304, 306, 322, 324, 326 having connection settings. Only provided.

ここで、図9を用いて、接続設定について説明する。図9を参照して、歯車オブジェクトC1,C2,C3が隣接して一直線上に配置され、それぞれに対応して、不可視歯車オブジェクトB1,B2,B3が設定されていると仮定する。   Here, the connection setting will be described with reference to FIG. Referring to FIG. 9, it is assumed that gear objects C1, C2, and C3 are adjacently arranged on a straight line, and invisible gear objects B1, B2, and B3 are set corresponding to each.

なお、図9では、歯車オブジェクトC1−C3と、不可視歯車オブジェクトB1−B3が同一平面に配置されているように記載してあるが、実際には、上述したように、異なるレイヤに配置されている。   In FIG. 9, the gear objects C1 to C3 and the invisible gear objects B1 to B3 are described as being arranged on the same plane, but actually, as described above, they are arranged on different layers. Yes.

図9に示すように、歯車オブジェクトC1と歯車オブジェクトC2との間では、接続設定が無い。このため、たとえ歯車オブジェクトC1のソケットオブジェクトS1(またはS2)と歯車オブジェクトC2のソケットオブジェクトS3(またはS4)とが一直線上に並んだとしても、歯車オブジェクトC1から歯車オブジェクトC2に、または、歯車オブジェクトC2から歯車オブジェクトC1に、ボールオブジェクト(図9では省略)が移動することはない。かかる場合には、接続状態(ボールオブジェクトが移動可能な状態)を判断しなくてよいため、不可視歯車オブジェクトB1と不可視歯車オブジェクトB2とでは、それらが接近する側に、不可視ソケットオブジェクトは設定されていない。   As shown in FIG. 9, there is no connection setting between the gear object C1 and the gear object C2. Therefore, even if the socket object S1 (or S2) of the gear object C1 and the socket object S3 (or S4) of the gear object C2 are aligned on a straight line, the gear object C1 is changed to the gear object C2 or the gear object The ball object (not shown in FIG. 9) does not move from C2 to the gear object C1. In such a case, since it is not necessary to determine the connection state (the state in which the ball object is movable), the invisible socket object is set on the side where the invisible gear object B1 and the invisible gear object B2 approach each other. Absent.

しかし、歯車オブジェクトC2と歯車オブジェクトC3との間では、接続設定が有る。具体的には、歯車オブジェクトC2に対して、歯車オブジェクトC2から歯車オブジェクトC3にボールオブジェクトが移動可能であることの接続設定がなされる。このため、不可視歯車オブジェクトB2と不可視歯車オブジェクトB3とでは、それらが接近する側に、それぞれ、不可視ソケットオブジェクトBS1および不可視ソケットオブジェクトBS2が設けられる。   However, there is a connection setting between the gear object C2 and the gear object C3. Specifically, a connection setting is made for the gear object C2 that the ball object can move from the gear object C2 to the gear object C3. For this reason, the invisible gear object B2 and the invisible gear object B3 are provided with an invisible socket object BS1 and an invisible socket object BS2 on the side where they approach each other.

このような場合に、歯車オブジェクトC2のソケットオブジェクトS3(またはS4)が、不可視歯車オブジェクトB2の不可視ソケットオブジェクトBS1と重なる位置(この実施例では、角度差が5度未満である。以下、同じ。)に在り、かつ、歯車オブジェクトC3のソケットオブジェクトS5(またはS6)が、不可視歯車オブジェクトB3の不可視ソケットオブジェクトBS2と重なる位置に在るとき、所定の関係が満たされ、ソケットオブジェクトS3(またはS4)とソケットオブジェクトS5(またはS6)とが接続状態であることがフラグ(後述する「接続フラグ」)によって設定される。つまり、所定の関係は、接続設定の有る2つの歯車オブジェクトに設けられるソケットオブジェクトが、それぞれ不可視ソケットオブジェクトに重なる位置に存在することを意味する。このとき、2つのソケットオブジェクトは一直線上或いはほぼ一直線上に並ぶ。   In such a case, the position where the socket object S3 (or S4) of the gear object C2 overlaps the invisible socket object BS1 of the invisible gear object B2 (in this embodiment, the angle difference is less than 5 degrees. The same applies hereinafter. ) And the socket object S5 (or S6) of the gear object C3 is in a position overlapping the invisible socket object BS2 of the invisible gear object B3, the predetermined relationship is satisfied, and the socket object S3 (or S4) And the socket object S5 (or S6) are set by a flag (a “connection flag” described later). In other words, the predetermined relationship means that the socket objects provided in the two gear objects having connection settings are present at positions overlapping the invisible socket objects, respectively. At this time, the two socket objects are aligned on a straight line or substantially on a straight line.

ここで、図10を参照して、隣接する2つの歯車オブジェクトC11,C12に設けられるソケットオブジェクトS11,S12が接続状態であるかどうかを判断する方法について説明する。図10では、歯車オブジェクトC11の回転量はLであり、角度オフセット値はsaである。一方、歯車オブジェクトC12の回転量はL´であり、角度オフセット値はs´aである。ただし、この実施例では、回転量L,L´を算出するための基準位置をすべての歯車オブジェクト(302,304,306,322,324,326)に対して同じ位置(方向)に設定してある。したがって、隣接する2つの歯車オブジェクトC11,C12のうち、着目する一方の歯車オブジェクトC11の回転量をLとし、これに隣接する他方の歯車オブジェクトC12の回転量をL´とすると、ソケットオブジェクトS11とソケットオブジェクトS12との角度差Aは数4で得られる。角度オフセット値sa,s´aは、歯車オブジェクトC11,C12を表示する時の基準位置に対するずれによる角度で決定されるが、一度回転された後は、基準位置に対する回転後の角度に更新される。   Here, with reference to FIG. 10, a method for determining whether or not the socket objects S11 and S12 provided in the adjacent two gear objects C11 and C12 are in a connected state will be described. In FIG. 10, the rotation amount of the gear object C11 is L, and the angle offset value is sa. On the other hand, the rotation amount of the gear object C12 is L ′, and the angle offset value is s′a. However, in this embodiment, the reference position for calculating the rotation amounts L and L ′ is set to the same position (direction) for all the gear objects (302, 304, 306, 322, 324, 326). is there. Therefore, if the rotation amount of one gear object C11 of interest among the two adjacent gear objects C11 and C12 is L and the rotation amount of the other gear object C12 adjacent thereto is L ′, the socket object S11 The angle difference A with the socket object S12 is obtained by Equation 4. The angle offset values sa and s′a are determined by the angle due to the deviation with respect to the reference position when the gear objects C11 and C12 are displayed. .

[数4]
A=|(sa+L)−(s´a+L´)−180|
ただし、|・|は絶対値を意味する。なお、この実施例では、すべての歯車オブジェクト(302,304,306,322,324,326)に対して同じ位置(方向)に基準位置を設定してあるため、角度差Aを求める際に、180(度)減算するようにしてあるが、隣接する歯車オブジェクトの基準位置を180度ずらすようにすれば、180(度)減算する必要はない。
[Equation 4]
A = | (sa + L) − (s′a + L ′) − 180 |
However, | · | means an absolute value. In this embodiment, since the reference position is set at the same position (direction) for all gear objects (302, 304, 306, 322, 324, 326), when obtaining the angle difference A, Although 180 (degrees) is subtracted, it is not necessary to subtract 180 (degrees) if the reference position of the adjacent gear object is shifted by 180 degrees.

そして、数4に従って算出された角度差Aが所定角度(たとえば、5度)未満である場合には、接続状態であることが設定され、角度差Aが所定角度以上であれば、接続状態であることは設定されない。   If the angle difference A calculated according to Equation 4 is less than a predetermined angle (for example, 5 degrees), the connected state is set. If the angle difference A is equal to or greater than the predetermined angle, the connected state is set. It is not set to be.

図9に戻って、接続状態であることが設定されている場合に、歯車オブジェクトC2のソケットオブジェクトS3(またはS4)に保持されるボールオブジェクトが、歯車オブジェクトC3のソケットオブジェクトS5(またはS6)に移動され、保持される。ただし、接続状態であることが設定された場合であっても、歯車オブジェクトC2のソケットオブジェクトS3(またはS4)にボールオブジェクトが保持されていない場合には、当然のことながら、ボールオブジェクトが歯車オブジェクトC3のソケットオブジェクトS5(またはS6)に移動されることはない。   Returning to FIG. 9, when the connection state is set, the ball object held in the socket object S3 (or S4) of the gear object C2 becomes the socket object S5 (or S6) of the gear object C3. Moved and held. However, even when the connection state is set, if the ball object is not held in the socket object S3 (or S4) of the gear object C2, the ball object is naturally a gear object. It is not moved to the socket object S5 (or S6) of C3.

なお、ここでは、歯車オブジェクトC3から歯車オブジェクトC2への接続設定は無いため、接続状態であることが設定されている場合であっても、歯車オブジェクトC3のソケットオブジェクトS5(またはS6)から歯車オブジェクトC2のソケットオブジェクトS3(またはS4)にボールオブジェクトが移動することはない。   Here, since there is no connection setting from the gear object C3 to the gear object C2, the gear object from the socket object S5 (or S6) of the gear object C3 is set even if the connection state is set. The ball object does not move to the socket object S3 (or S4) of C2.

次に、図11に示すように、ボールオブジェクトが歯車オブジェクトC11から歯車オブジェクトC12に移動されるときの、歯車オブジェクトC11のソケットオブジェクト(図示せず)に保持されたボールオブジェクトの位置と、当該ボールオブジェクトを受け容れるソケットオブジェクトとの位置とを、数5および数6に示す。   Next, as shown in FIG. 11, when the ball object is moved from the gear object C11 to the gear object C12, the position of the ball object held in the socket object (not shown) of the gear object C11, and the ball The positions of the socket object that accepts the object are shown in Equations 5 and 6.

[数5]
ボールオブジェクトの位置座標のX成分およびY成分
x=(p+q)×cos(sa)+(p+q)×(−sin(sa))
y=(p+q)×sin(sa)+(p+q)×cos(sa)
[数6]
ソケットオブジェクトの位置座標のX成分およびY成分
x=p×cos(sa)+(−sin(sa))
y=p×sin(sa)+p×cos(sa)
ただし、pは、歯車オブジェクトC12の中心から歯車オブジェクトC12の不可視ソケットオブジェクトの中心までの距離である。また、qは、歯車オブジェクトC12の不可視ソケットオブジェクトの中心から歯車オブジェクトC11のボールオブジェクトの中心までの距離である。
[Equation 5]
X component and Y component of the position coordinates of the ball object x = (p + q) × cos (sa) + (p + q) × (−sin (sa))
y = (p + q) × sin (sa) + (p + q) × cos (sa)
[Equation 6]
X component and Y component of the position coordinate of the socket object x = p × cos (sa) + (− sin (sa))
y = p * sin (sa) + p * cos (sa)
Here, p is the distance from the center of the gear object C12 to the center of the invisible socket object of the gear object C12. Further, q is a distance from the center of the invisible socket object of the gear object C12 to the center of the ball object of the gear object C11.

このボールオブジェクトおよびソケットオブジェクトの位置座標を用いてボールオブジェクトが移動される。ただし、ボールオブジェクトが歯車オブジェクトC11から歯車オブジェクトC12に移動したときに、距離qはリセットされる。具体的には、距離qが0(q=0)になるまで、1フレーム毎に距離qが減算される。したがって、ボールオブジェクトが歯車オブジェクトC11から歯車オブジェクトC12に移動する様子がゲーム画面300およびゲーム画面320に表示される。   The ball object is moved using the position coordinates of the ball object and the socket object. However, the distance q is reset when the ball object moves from the gear object C11 to the gear object C12. Specifically, the distance q is subtracted for each frame until the distance q becomes 0 (q = 0). Accordingly, a state in which the ball object moves from the gear object C11 to the gear object C12 is displayed on the game screen 300 and the game screen 320.

ただし、ボールオブジェクトが移動可能かどうかは、或る歯車オブジェクトのソケットオブジェクトに保持されたボールオブジェクトと、当該或る歯車オブジェクトと接続設定の有る他の歯車オブジェクトに対応して当該ボールオブジェクトが移動されるべき位置に設けられる不可視オブジェクトとの角度差A´に基づいて判断される。この角度差A´は数7に従って算出される。角度差A´の算出方法は角度差Aの算出方法と同様である。ただし、ボールオブジェクトの回転量は、当該ボールオブジェクトを保持するソケットオブジェクトの回転量Lと同じである。また、不可視ソケットオブジェクトは、固定的に設けられるため、角度オフセット値bsaのみが考慮される。図11からも分かるように、不可視ソケットオブジェクトの角度オフセット値bsaを決定する基準位置も、歯車オブジェクトと同様に、不可視歯車オブジェクトの上方向である。   However, whether or not the ball object is movable is determined by moving the ball object corresponding to the ball object held in the socket object of a certain gear object and another gear object having a connection setting with the certain gear object. Judgment is made based on the angle difference A ′ with the invisible object provided at the position. This angle difference A ′ is calculated according to Equation 7. The calculation method of the angle difference A ′ is the same as the calculation method of the angle difference A. However, the rotation amount of the ball object is the same as the rotation amount L of the socket object that holds the ball object. Further, since the invisible socket object is fixedly provided, only the angle offset value bsa is considered. As can be seen from FIG. 11, the reference position for determining the angle offset value bsa of the invisible socket object is also the upward direction of the invisible gear object, like the gear object.

[数7]
A´=|bsa−(sa+L)−180|
この角度差A´が所定角度(この実施例では、5度)未満であるとき、ボールオブジェクトが移動可能であることが判断される。そして、ボールオブジェクトが保持されるソケットオブジェクトと、角度差A´を求めた不可視ソケットオブジェクトに対応するソケットオブジェクトとが接続状態である場合に、ボールオブジェクトが移動されるのである。
[Equation 7]
A ′ = | bsa− (sa + L) −180 |
When the angle difference A ′ is less than a predetermined angle (5 degrees in this embodiment), it is determined that the ball object is movable. Then, when the socket object that holds the ball object and the socket object corresponding to the invisible socket object for which the angle difference A ′ has been obtained are in a connected state, the ball object is moved.

図12は、図2に示したRAM42のメモリマップを示す図解図である。図12に示すように、RAM42は、プログラム記憶領域70およびデータ記憶領域72を含む。プログラム記憶領域70には、パズルゲームプログラムが記憶され、このパズルゲームプログラムは、ゲームメイン処理プログラム70a,画像生成プログラム70b,画像表示プログラム70c,画像更新プログラム70d,指示位置検出プログラム70e,歯車オブジェクト回転処理プログラム70f,ソケット接続判別プログラム70g,ボール移動処理プログラム70hおよびゲームクリア処理プログラム70iなどによって構成される。   FIG. 12 is an illustrative view showing a memory map of the RAM 42 shown in FIG. As shown in FIG. 12, the RAM 42 includes a program storage area 70 and a data storage area 72. The program storage area 70 stores a puzzle game program. The puzzle game program includes a game main processing program 70a, an image generation program 70b, an image display program 70c, an image update program 70d, an indicated position detection program 70e, a gear object rotation. The processing program 70f, the socket connection determination program 70g, the ball movement processing program 70h, the game clear processing program 70i, and the like.

ゲームメイン処理プログラム70aは、この実施例のパズルゲームのメインルーチンを処理するためのプログラムである。画像生成プログラム70bは、後述する画像データ(ポリゴンやテクスチャなどのデータ)を用いて、各オブジェクトを含むゲーム画像を生成するためのプログラムである。また、画像生成プログラム70bは、後述するポリゴンデータ(100bなど)を用いて、各不可視歯車オブジェクトを含むレイヤも生成する。画像表示プログラム70cは、画像生成プログラム70bに従って生成されゲーム画像を、ゲーム画面(300,320)としてLCD12,14に表示するためのプログラムである。画像更新プログラム70dは、LCD12,14に表示されるゲーム画像(ゲーム画面)を更新するためのプログラムである。   The game main processing program 70a is a program for processing the main routine of the puzzle game of this embodiment. The image generation program 70b is a program for generating a game image including each object using image data (data such as polygons and textures) described later. The image generation program 70b also generates a layer including each invisible gear object using polygon data (100b or the like) described later. The image display program 70c is a program for displaying game images generated according to the image generation program 70b on the LCDs 12 and 14 as game screens (300 and 320). The image update program 70d is a program for updating a game image (game screen) displayed on the LCDs 12 and 14.

指示位置検出プログラ70eは、タッチパネル24からの座標データの有無を検出し、座標データが有る場合に、当該座標データを取得してデータ記憶領域72に記憶するプログラムである。歯車オブジェクト回転処理プログラム70fは、プレイヤの操作に従って歯車オブジェクト(302,304,306,322,324,326)を回転させるプログラムである。この歯車オブジェクト回転処理プログラム70fは、プレイヤが直接的に回転させる歯車オブジェクト(322,324,326)のみならず、それに連動する歯車オブジェクト(302,304,306)の回転も制御する。   The designated position detection program 70e is a program that detects the presence / absence of coordinate data from the touch panel 24, and acquires the coordinate data and stores it in the data storage area 72 when there is coordinate data. The gear object rotation processing program 70f is a program for rotating the gear objects (302, 304, 306, 322, 324, 326) according to the operation of the player. The gear object rotation processing program 70f controls not only the gear objects (322, 324, 326) that the player directly rotates, but also the rotation of the gear objects (302, 304, 306) associated therewith.

ソケット接続判別プログラム70gは、隣接する歯車オブジェクト(302,304,306,322,324,326)に設けられるソケットオブジェクト(302a,302b,304a,304b,306a,306b,322a,322b,324a,324b,326a,326b)同士が接続状態であるかどうかを判別するためのプログラムである。具体的には、着目する歯車オブジェクト(302,304,306,322,324,326)の着目するソケットオブジェクト(302a,302b,304a,304b,306a,306b,322a,322b,324a,324b,326a,326b)が、対応する不可視ソケットオブジェクト(402a,402b,404a,404b,406a,406b,422a,422b,424a,424b,426a,426b)に重なったとき、隣接する歯車オブジェクトとの接続設定の有無が判別される。次に、着目するソケットオブジェクトと、その接続設定が有る歯車オブジェクトに設けられるソケットオブジェクトとの角度差Aが算出される。この角度差Aに基づいて接続状態であるかどうかが判断される。この実施例では、角度差Aが所定角度(たとえば、5度)未満である場合に、接続状態であることを判断する。そして、接続状態であることが判断されると、接続状態である2つのソケットオブジェクトに対して接続状態であることを示すデータないしフラグがRAM42に記憶(設定)される。   The socket connection determination program 70g is provided with socket objects (302a, 302b, 304a, 304b, 306a, 306b, 322a, 322b, 324a, 324b, 324b) provided in adjacent gear objects (302, 304, 306, 322, 324, 326). 326a, 326b) is a program for determining whether or not they are in a connected state. Specifically, the socket object (302a, 302b, 304a, 304b, 306a, 306b, 322a, 322b, 324a, 324b, 326a) of the focused gear object (302, 304, 306, 322, 324, 326), 326b) overlaps with the corresponding invisible socket object (402a, 402b, 404a, 404b, 406a, 406b, 422a, 422b, 424a, 424b, 426a, 426b), the presence / absence of connection setting with the adjacent gear object is determined. Determined. Next, the angle difference A between the socket object of interest and the socket object provided in the gear object having the connection setting is calculated. Based on the angle difference A, it is determined whether or not the connection state is established. In this embodiment, when the angle difference A is less than a predetermined angle (for example, 5 degrees), it is determined that the connection state is established. When it is determined that the connection state is established, data or a flag indicating the connection state is stored (set) in the RAM 42 for the two socket objects in the connection state.

ただし、ソケットオブジェクトが不可視ソケットオブジェクトに重なるかどうかは、角度差Bが所定角度(たとえば、5度)未満であるかどうかで判断される。角度差Bが所定角度未満である場合に、ソケットオブジェクトが不可視ソケットオブジェクトに重なると判断される。ただし、角度差Bは数8に従って算出される。   However, whether or not the socket object overlaps the invisible socket object is determined by whether or not the angle difference B is less than a predetermined angle (for example, 5 degrees). When the angle difference B is less than the predetermined angle, it is determined that the socket object overlaps the invisible socket object. However, the angle difference B is calculated according to Equation 8.

[数8]
B=|bsa−(sa+L)|
ボール移動処理プログラム70hは、歯車オブジェクト(302,304,306,322,324,326)に保持されたボールオブジェクト(312a,312b,314a,314b,316a,316b)を、他の歯車オブジェクトに移動させるためのプログラムである。具体的には、まず、ボールオブジェクト(312a,312b,314a,314b,316a,316b)と、当該ボールオブジェクトが保持された歯車オブジェクト(302,304,306,322,324,326)以外の他の歯車オブジェクトに対応して設けられた不可視ソケットオブジェクト(402a,402b,404a,404b,406a,406b,422a,422b,424a,424b,426a,426b)との角度差A´を算出する。この角度差A´が所定角度(たとえば、5度)未満であり、ボールオブジェクトを保持するソケットオブジェクト(302a,302b,304a,304b,306a,306b,322a,322b,324a,324b)と、当該不可視ソケットオブジェクトに対応するソケットオブジェクトとが接続状態である場合に、接続設定に従って当該ボールオブジェクトが移動される。
[Equation 8]
B = | bsa− (sa + L) |
The ball movement processing program 70h moves the ball objects (312a, 312b, 314a, 314b, 316a, 316b) held in the gear objects (302, 304, 306, 322, 324, 326) to other gear objects. It is a program for. Specifically, first, other than the ball object (312a, 312b, 314a, 314b, 316a, 316b) and the gear object (302, 304, 306, 322, 324, 326) holding the ball object. An angle difference A ′ with an invisible socket object (402a, 402b, 404a, 404b, 406a, 406b, 422a, 422b, 424a, 424b, 426a, 426b) provided corresponding to the gear object is calculated. This angle difference A ′ is less than a predetermined angle (for example, 5 degrees), the socket objects (302a, 302b, 304a, 304b, 306a, 306b, 322a, 322b, 324a, 324b) holding the ball object, and the invisible When the socket object corresponding to the socket object is in a connected state, the ball object is moved according to the connection setting.

ゲームクリア処理プログラム70iは、パズルゲームをクリアしたかどうかを判定し、パズルゲームをクリアしたと判定したときに、クリア処理を実行するためのプログラムである。たとえば、パズルを解くことができた場合に、当該面ないしレベルをクリアした旨をゲーム画面300(またはゲーム画面320)に表示し、次の面ないしレベルのパズルゲームをプレイ可能にする。ただし、この実施例では、すべてのボールオブジェクト312a,312b,314a,314b,316a,316bが、同じ色の付された歯車オブジェクト322,324,326に保持されたときに、ゲームクリア(パズルを解いた)と判断される。   The game clear process program 70i is a program for determining whether or not the puzzle game has been cleared and executing the clear process when it is determined that the puzzle game has been cleared. For example, when the puzzle can be solved, the fact that the plane or level has been cleared is displayed on the game screen 300 (or the game screen 320) so that the puzzle game of the next plane or level can be played. However, in this embodiment, when all the ball objects 312a, 312b, 314a, 314b, 316a, and 316b are held by the same colored gear objects 322, 324, and 326, the game is cleared (the puzzle is solved). It was judged).

図示は省略するが、パズルゲームプログラムは、ゲーム音出力プログラムおよびバックアッププログラムも含む。ゲーム音出力プログラムは、音(音楽)データを用いて、効果音,音声(擬声音),BGMのようなゲームに必要な音を出力するためのプログラムである。バックアッププログラムは、RAM42に記憶されたゲームデータ(途中データ,結果データ)をメモリカード28のRAM28bに記憶(セーブ)するためのプログラムである。   Although illustration is omitted, the puzzle game program also includes a game sound output program and a backup program. The game sound output program is a program for outputting sounds necessary for the game, such as sound effects, sound (pseudosound), and BGM, using sound (music) data. The backup program is a program for storing (saving) game data (intermediate data, result data) stored in the RAM 42 in the RAM 28 b of the memory card 28.

また、データ記憶領域72には、指示位置記憶領域72aおよびオブジェクトデータ記憶領域72bが設けられる。また、データ記憶領域72には、得点データ72cが記憶され、そして、タッチオンフラグ72dが設けられる。   The data storage area 72 is provided with a designated position storage area 72a and an object data storage area 72b. In the data storage area 72, score data 72c is stored, and a touch-on flag 72d is provided.

指示位置記憶領域72aには、現フレームのタッチ位置の座標データ720および直前フレームのタッチ位置の座標データ722が記憶される。ただし、パズルゲームを開始した直後では、直前フレームについてのタッチ座標の座標データ722は記憶されていない。詳細な説明は省略するが、現フレームのタッチ位置の座標データ720が記憶される前に、指示位置記憶領域72aに記憶された座標データ720が直前フレームのタッチ位置の座標データに記憶(上書き)される。   The designated position storage area 72a stores the coordinate data 720 of the touch position of the current frame and the coordinate data 722 of the touch position of the immediately preceding frame. However, immediately after starting the puzzle game, the coordinate data 722 of the touch coordinates for the immediately preceding frame is not stored. Although detailed description is omitted, before the coordinate data 720 of the touch position of the current frame is stored, the coordinate data 720 stored in the designated position storage area 72a is stored (overwritten) in the coordinate data of the touch position of the previous frame. Is done.

オブジェクトデータ記憶領域72bは、さらに、歯車オブジェクトデータ記憶領域724、ボールオブジェクトデータ記憶領域726および不可視歯車オブジェクトデータ記憶領域728を含む。   The object data storage area 72b further includes a gear object data storage area 724, a ball object data storage area 726, and an invisible gear object data storage area 728.

図13に示すように、歯車オブジェクトデータ記憶領域724は、第1歯車オブジェクトデータ80,第2歯車オブジェクトデータ82,…を記憶する。以下、第1歯車オブジェクトデータ80についてのみ説明するが、第2歯車オブジェクトデータ82などの他の歯車オブジェクトデータについても同様である。   As shown in FIG. 13, the gear object data storage area 724 stores first gear object data 80, second gear object data 82,. Hereinafter, only the first gear object data 80 will be described, but the same applies to other gear object data such as the second gear object data 82.

図13に示すように、第1歯車オブジェクトデータ80は、画像データ80a,位置データ80b,色データ80c,回転量データ80d,連動歯車設定データ80e,接続設定データ80fおよびソケットオブジェクトデータ80gを含む。   As shown in FIG. 13, the first gear object data 80 includes image data 80a, position data 80b, color data 80c, rotation amount data 80d, interlocking gear setting data 80e, connection setting data 80f, and socket object data 80g.

画像データ80aは、第1歯車オブジェクト(後述するソケットオブジェクトを除く。)を描画するための画像データ(ポリゴンやテクスチャなどのデータ)である。ただし、この画像データ80aによって、第1歯車オブジェクトの大きさ(および形状)が決定される。位置データ80bは、第1歯車オブジェクトの3次元位置の座標データである。ただし、この第1歯車オブジェクトが配置されるレイヤ(400)の位置(Z方向の位置)が別途記憶されている場合には、3次元仮想空間の奥行き方向(Z軸方向)の成分を除いて、このレイヤ上の位置(2次元座標)を記憶しておけばよい。   The image data 80a is image data (data such as polygons and textures) for drawing the first gear object (excluding a socket object described later). However, the size (and shape) of the first gear object is determined by the image data 80a. The position data 80b is coordinate data of the three-dimensional position of the first gear object. However, when the position (Z-direction position) of the layer (400) where the first gear object is arranged is separately stored, the component in the depth direction (Z-axis direction) of the three-dimensional virtual space is excluded. The position (two-dimensional coordinates) on this layer may be stored.

色データ80cは、第1歯車オブジェクトに付される色についてのデータである。回転量データ80dは、プレイヤのタッチ操作に応じて、上記の数3に従って算出された回転量Lのデータ(角度データ)である。連動歯車設定データ80eは、第1歯車オブジェクトと連動する歯車(他の歯車オブジェクト)についての識別情報のデータないし他の歯車オブジェクトデータが記憶されたアドレスポインタである。この他の歯車オブジェクトは、上述した回転量データ80dによって、その回転量が決定される。ただし、回転方向は、回転量データ80の符号(+,−)で決定されるが、回転方向が反転される場合には、その符号が逆にされる。また、回転量を変化させる場合には、変化に応じた倍率が回転量データ80が示す回転量Lに掛け算される。   The color data 80c is data about the color attached to the first gear object. The rotation amount data 80d is data (angle data) of the rotation amount L calculated according to the above Equation 3 according to the player's touch operation. The interlocking gear setting data 80e is an address pointer in which identification information data or other gear object data about a gear (another gear object) interlocked with the first gear object is stored. The rotation amount of the other gear object is determined by the rotation amount data 80d described above. However, the rotation direction is determined by the sign (+, −) of the rotation amount data 80, but when the rotation direction is reversed, the sign is reversed. Further, when changing the rotation amount, the magnification corresponding to the change is multiplied by the rotation amount L indicated by the rotation amount data 80.

接続設定データ80fは、第1歯車オブジェクトと接続設定されている他の歯車オブジェクトの識別情報のデータないし他の歯車オブジェクトデータが記憶されたアドレスポインタである。ただし、この接続設定データ80fに記憶されるのは、第1歯車オブジェクトから他の歯車オブジェクトにボールオブジェクトが移動可能である場合の当該他の歯車オブジェクトの識別情報のデータ等である。したがって、他の歯車オブジェクトから第1歯車オブジェクトにボールオブジェクトが移動可能である場合には、当該他の歯車オブジェクトの接続設定データに当該第1歯車オブジェクトの識別情報のデータないし第1歯車オブジェクトデータ80が記憶されたアドレスポインタが記憶される。   The connection setting data 80f is an address pointer in which identification information data or other gear object data of another gear object connected to the first gear object is stored. However, what is stored in the connection setting data 80f is data of identification information of the other gear object when the ball object is movable from the first gear object to the other gear object. Therefore, when the ball object is movable from the other gear object to the first gear object, the identification information data of the first gear object or the first gear object data 80 is included in the connection setting data of the other gear object. Is stored.

ソケットオブジェクトデータ80gは、第1歯車オブジェクトに設けられるソケットオブジェクトについてのデータであり、第1ソケットオブジェクトデータ800,第2ソケットオブジェクトデータ802,…を含む。以下、第1ソケットオブジェクトデータ800についてのみ説明するが、第2ソケットオブジェクトデータ802などの他のソケットオブジェクトデータについても同様である。   The socket object data 80g is data about a socket object provided in the first gear object, and includes first socket object data 800, second socket object data 802,. Hereinafter, only the first socket object data 800 will be described, but the same applies to other socket object data such as the second socket object data 802.

図13に示すように、第1ソケットオブジェクトデータ800は、画像データ800a,位置データ800b,角度オフセット値データ800c,接続フラグ800dおよび一致フラグ800eを含む。   As shown in FIG. 13, the first socket object data 800 includes image data 800a, position data 800b, angle offset value data 800c, a connection flag 800d, and a match flag 800e.

画像データ800aは、第1ソケットオブジェクトを描画するための画像データ(ポリゴンやテクスチャなどのデータ)である。位置データ800bは、第1ソケットオブジェクトの位置(3次元位置)の座標データである。この第1ソケットオブジェクトが配置されるレイヤ(400)のZ座標が別途記憶されている場合には、当該レイヤ上における第1ソケットオブジェクトの2次元座標の座標データが記憶される。角度オフセット値データ800cは、上述したように、当該第1ソケットオブジェクトが設けられる第1歯車オブジェクトの基準位置に対する当該第1ソケットオブジェクトの位置についての角度saの角度データである。   The image data 800a is image data (data such as polygons and textures) for drawing the first socket object. The position data 800b is coordinate data of the position (three-dimensional position) of the first socket object. When the Z coordinate of the layer (400) where the first socket object is arranged is stored separately, the coordinate data of the two-dimensional coordinate of the first socket object on the layer is stored. As described above, the angle offset value data 800c is angle data of the angle sa with respect to the position of the first socket object with respect to the reference position of the first gear object on which the first socket object is provided.

接続フラグ800dは、第1ソケットオブジェクトが他のソケットオブジェクトと接続状態にあるか否かを判別するためのフラグである。たとえば、接続フラグ800dは、1ビットのレジスタで構成され、接続フラグ800dがオン(成立)である場合に、データ値「1」がレジスタに記憶され、接続フラグ800dがオフ(不成立)である場合に、データ値「0」がレジスタに記憶される。ただし、第1ソケットオブジェクトが他のソケットオブジェクトと接続状態にある場合に、接続フラグ800dはオンされる。一方、第1ソケットオブジェクトが他のソケットオブジェクトと接続状態にない場合には、接続フラグ800dはオフされる。この接続フラグ800dのオン/オフは、ソケット接続判別プログラム70gに従って実行される。   The connection flag 800d is a flag for determining whether or not the first socket object is connected to another socket object. For example, the connection flag 800d is composed of a 1-bit register, and when the connection flag 800d is on (established), the data value “1” is stored in the register, and the connection flag 800d is off (not established). The data value “0” is stored in the register. However, the connection flag 800d is turned on when the first socket object is in a connection state with another socket object. On the other hand, when the first socket object is not connected to other socket objects, the connection flag 800d is turned off. The connection flag 800d is turned on / off according to the socket connection determination program 70g.

一致フラグ800eは、第1ソケットオブジェクトに保持されるボールオブジェクトに付された色と、当該第1ソケットオブジェクトが設けられる歯車オブジェクトに付された色とが一致するか否かを判別するためのフラグである。この一致フラグ800eは、1ビットのレジスタで構成され、一致フラグ800eがオンである場合に、データ値「1」がレジスタに記憶され、一致フラグ800eがオフである場合に、データ値「0」がレジスタに記憶される。ただし、第1ソケットオブジェクトに保持されるボールオブジェクトに付された色と、当該第1ソケットオブジェクトが設けられる歯車オブジェクトに付された色とが一致する場合に、一致フラグ800eはオンされる。一方、第1ソケットオブジェクトに保持されるボールオブジェクトに付された色と、当該第1ソケットオブジェクトが設けられる歯車オブジェクトに付された色とが一致しない場合には、一致フラグ800eはオフされる。   The match flag 800e is a flag for determining whether or not the color attached to the ball object held in the first socket object matches the color attached to the gear object provided with the first socket object. It is. The coincidence flag 800e is composed of a 1-bit register. When the coincidence flag 800e is on, the data value “1” is stored in the register, and when the coincidence flag 800e is off, the data value “0” is stored. Is stored in the register. However, the match flag 800e is turned on when the color assigned to the ball object held by the first socket object matches the color assigned to the gear object provided with the first socket object. On the other hand, if the color assigned to the ball object held by the first socket object does not match the color assigned to the gear object provided with the first socket object, the match flag 800e is turned off.

図14は図12に示したボールオブジェクトデータ記憶領域726を具体的に示す図解図である。ボールオブジェクトデータ記憶領域726は、パズルゲームで使用される第1ボールオブジェクトや第2ボールオブジェクトのデータ(90,92)などを記憶する。以下、第1ボールオブジェクトデータ90についてのみ説明するが、第2ボールオブジェクトデータ92などの他のボールオブジェクトデータについても同様である。   FIG. 14 is an illustrative view specifically showing the ball object data storage area 726 shown in FIG. The ball object data storage area 726 stores data (90, 92) of the first ball object and the second ball object used in the puzzle game. Hereinafter, only the first ball object data 90 will be described, but the same applies to other ball object data such as the second ball object data 92.

図14に示すように、第1ボールオブジェクトデータ90は、画像データ90a,位置データ90b,色データ90cおよび角度オフセット値データ90dを含む。   As shown in FIG. 14, the first ball object data 90 includes image data 90a, position data 90b, color data 90c, and angle offset value data 90d.

画像データ90aは、第1ボールオブジェクトを描画するための画像データ(ポリゴンやテクスチャなどのデータ)である。ただし、この画像データによって第1ボールオブジェクトの大きさ(形状)が決定される。位置データ90bは、第1ボールオブジェクトの位置(3次元位置)の座標データである。ただし、第1ボールオブジェクトが配置されるレイヤ(400)のZ座標を別途記憶しておく場合には、このレイヤ上における第1ボールオブジェクトの2次元座標の座標データが記憶される。色データ90cは、第1ボールオブジェクトに付された色についてのデータである。角度オフセット値データ90dは、当該第1ボールオブジェクトが保持される歯車オブジェクトの基準位置に対する当該ボールオブジェクトの位置についての角度baの角度データである。   The image data 90a is image data (data such as polygons and textures) for drawing the first ball object. However, the size (shape) of the first ball object is determined by this image data. The position data 90b is coordinate data of the position (three-dimensional position) of the first ball object. However, when the Z coordinate of the layer (400) where the first ball object is arranged is stored separately, the coordinate data of the two-dimensional coordinates of the first ball object on this layer is stored. The color data 90c is data regarding the color assigned to the first ball object. The angle offset value data 90d is angle data of the angle ba with respect to the position of the ball object with respect to the reference position of the gear object that holds the first ball object.

図15は図12に示した不可視歯車オブジェクトデータ記憶領域728を具体的に示した図解図である。図15に示すように、不可視歯車オブジェクトデータ記憶領域728には、第1不可視歯車オブジェクトデータ100,第2不可視歯車オブジェクトデータ102,…が記憶される。以下、第1不可視歯車オブジェクトデータ100についてのみ説明するが、第2不可視歯車オブジェクトデータ102などの他の不可視歯車オブジェクトデータについても同様である。   FIG. 15 is an illustrative view specifically showing the invisible gear object data storage area 728 shown in FIG. As shown in FIG. 15, invisible gear object data storage area 728 stores first invisible gear object data 100, second invisible gear object data 102,. Hereinafter, only the first invisible gear object data 100 will be described, but the same applies to other invisible gear object data such as the second invisible gear object data 102.

図15に示すように、第1不可視歯車オブジェクトデータ100は、位置データ100a,ポリゴンデータ100bおよび不可視ソケットオブジェクトデータ100cを含む。   As shown in FIG. 15, the first invisible gear object data 100 includes position data 100a, polygon data 100b, and invisible socket object data 100c.

位置データ100aは、第1不可視歯車オブジェクトの位置(3次元位置)の座標データである。ただし、第1不可視歯車オブジェクトが配置されるレイヤ(420)のZ座標が別途記憶されている場合には、このレイヤ上における2次元座標の座標データが記憶される。ポリゴンデータ100bは、第1不可視歯車オブジェクトを形成するためのポリゴンデータである。なお、ポリゴンデータ100bによって第1不可視歯車オブジェクトが形成されるため、その大きさ(この実施例では、半径ないし直径)はポリゴンデータ100bによって規定される。   The position data 100a is coordinate data of the position (three-dimensional position) of the first invisible gear object. However, when the Z coordinate of the layer (420) where the first invisible gear object is arranged is stored separately, the coordinate data of the two-dimensional coordinates on this layer is stored. The polygon data 100b is polygon data for forming the first invisible gear object. Since the first invisible gear object is formed by the polygon data 100b, the size (radius or diameter in this embodiment) is defined by the polygon data 100b.

不可視ソケットオブジェクトデータ100cは、第1不可視ソケットオブジェクトデータ1000,第2不可視ソケットオブジェクトデータ1002,…を含む。以下、第1不可視ソケットオブジェクトデータ1000についてのみ説明するが、第2不可視ソケットオブジェクトデータ1002などの他の不可視ソケットオブジェクトデータについても同様である。   The invisible socket object data 100c includes first invisible socket object data 1000, second invisible socket object data 1002,. Hereinafter, only the first invisible socket object data 1000 will be described, but the same applies to other invisible socket object data such as the second invisible socket object data 1002.

図15に示すように、第1不可視ソケットオブジェクトデータ1000は、位置データ1000a、ポリゴンデータ1000bおよび角度オフセット値データ1000cを含む。   As shown in FIG. 15, the first invisible socket object data 1000 includes position data 1000a, polygon data 1000b, and angle offset value data 1000c.

位置データ1000aは、第1不可視ソケットオブジェクトの位置(3次元位置)の座標データである。ただし、第1不可視ソケットオブジェクトが配置されるレイヤ(420)のZ座標が決定されている場合には、このレイヤ上の2次元位置の座標データが記憶される。ポリゴンデータ1000bは、第1不可視ソケットオブジェクトを形成するためのポリゴンデータであり、その大きさ(この実施例では、半径ないし直径)も規定する。角度オフセット値データ1000cは、この第1不可視ソケットオブジェクトが設けらる第1不可視歯車オブジェクトの基準位置に対する当該第1不可視ソケットオブジェクトの位置についての角度s´aの角度データである。   The position data 1000a is coordinate data of the position (three-dimensional position) of the first invisible socket object. However, when the Z coordinate of the layer (420) where the first invisible socket object is arranged has been determined, the coordinate data of the two-dimensional position on this layer is stored. The polygon data 1000b is polygon data for forming the first invisible socket object, and also defines the size (radius or diameter in this embodiment). The angle offset value data 1000c is angle data of the angle s′a with respect to the position of the first invisible socket object with respect to the reference position of the first invisible gear object provided by the first invisible socket object.

図12に戻って、上述したように、データ記憶領域72には、得点データ72cが記憶される。この得点データ72cは、ゲームの進行に応じて加算されるパズルゲームについての得点の数値データである。ただし、得点のみならず、プレイヤないしプレイヤキャラクタのレベルについてのデータも記憶するようにしてもよい。   Returning to FIG. 12, as described above, the score data 72c is stored in the data storage area 72. The score data 72c is numerical data of scores for the puzzle game that is added as the game progresses. However, not only the score but also data about the level of the player or player character may be stored.

また、上述したように、データ記憶領域72には、タッチオンフラグ72dが設けられる。タッチオンフラグ72dは、タッチ入力(タッチ操作)の有無を判別するためのフラグである。たとえば、タッチオンフラグ72dは1ビットのレジスタで構成され、タッチオンフラグ72dがオンされると、データ値「1」がレジスタに設定され、タッチオンフラグ72dがオフされると、データ値「0」がレジスタに設定される。ただし、タッチ操作が有る場合に、タッチオンフラグ72dはオンされ、タッチ操作が無い場合に、タッチオンフラグ72dはオフされる。なお、タッチ操作の有無は、座標データの有無で容易に知ることができる。   Further, as described above, the data storage area 72 is provided with the touch-on flag 72d. The touch-on flag 72d is a flag for determining whether or not there is a touch input (touch operation). For example, the touch-on flag 72d is composed of a 1-bit register. When the touch-on flag 72d is turned on, the data value “1” is set in the register, and when the touch-on flag 72d is turned off, the data value “0” is set. Is set in the register. However, the touch-on flag 72d is turned on when there is a touch operation, and the touch-on flag 72d is turned off when there is no touch operation. The presence / absence of a touch operation can be easily known from the presence / absence of coordinate data.

具体的には、図2に示したCPUコア34が図16に示すフロー図に従って全体処理を実行する。図16に示すように、CPUコア34は全体処理を開始すると、ステップS1で、初期設定する。たとえば、ゲームを最初から開始する場合には、CPUコア34は、RAM42のバッファ領域をクリアしたり、各種フラグやタイマをリセットしたりする。また、ゲームを前回の続きから開始する場合には、CPUコア34は、RAM42のバッファ領域をクリアしたり、RAM28bに記憶されたセーブデータをロードしたりする。   Specifically, the CPU core 34 shown in FIG. 2 executes the entire process according to the flowchart shown in FIG. As shown in FIG. 16, when starting the entire process, the CPU core 34 performs initial setting in step S1. For example, when starting the game from the beginning, the CPU core 34 clears the buffer area of the RAM 42 or resets various flags and timers. When the game is started from the previous game, the CPU core 34 clears the buffer area of the RAM 42 or loads the save data stored in the RAM 28b.

続くステップS3では、ゲーム画像を表示する。ここでは、図3に示したように、ゲーム画面300がLCD12に表示されるとともに、ゲーム画面320がLCD14に表示される。次のステップS5では、タッチオンフラグ72dがオンであるかどうかを判断する。つまり、タッチ操作が有るかどうかを判断するのである。ステップS5で“NO”であれば、つまりタッチオンフラグ72dがオフであれば、タッチ操作が無いと判断して、そのままステップS13に進む。   In subsequent step S3, a game image is displayed. Here, as shown in FIG. 3, the game screen 300 is displayed on the LCD 12 and the game screen 320 is displayed on the LCD 14. In the next step S5, it is determined whether or not the touch-on flag 72d is on. That is, it is determined whether or not there is a touch operation. If “NO” in the step S5, that is, if the touch-on flag 72d is turned off, it is determined that there is no touch operation, and the process directly proceeds to a step S13.

しかし、ステップS5で“YES”であれば、つまりタッチオンフラグ72dがオンであれば、タッチ操作が有ると判断して、ステップS7で、後述する歯車オブジェクト回転処理(図17参照)を実行し、ステップS9で、後述するソケット接続判別処理(図18および図19参照)を実行し、ステップS11で、後述するボール移動処理(図20および図21参照)を実行してから、ステップS13に進む。   However, if “YES” in the step S5, that is, if the touch-on flag 72d is turned on, it is determined that there is a touch operation, and a gear object rotation process (see FIG. 17) described later is executed in a step S7. In step S9, a socket connection determination process (see FIG. 18 and FIG. 19) described later is executed. In step S11, a ball movement process (see FIG. 20 and FIG. 21) described later is executed, and then the process proceeds to step S13. .

ステップS13では、すべての一致フラグ(800e等)がオンであるかどうかを判断する。つまり、ボールオブジェクト312a,312b,314a,314b,316a,316bが、それぞれ、同じ色が付されている歯車オブジェクト322,324,326のソケットオブジェクト322a,322b,324a,324b,326a,326bに保持された状態であるかどうかを判断する。   In step S13, it is determined whether all match flags (800e, etc.) are on. That is, the ball objects 312a, 312b, 314a, 314b, 316a, and 316b are respectively held by the socket objects 322a, 322b, 324a, 324b, 326a, and 326b of the gear objects 322, 324, and 326 that are assigned the same color. It is judged whether it is in a state.

ステップS13で“NO”であれば、つまりいずれか1つの一致フラグでもオフであれば、ゲームクリアでないと判断して、そのままステップS17に進む。一方、ステップS13で“YES”であれば、つまりすべての一致フラグがオンであれば、ゲームクリアであると判断して、ステップS15で、ゲームクリア処理を実行して、ステップS17に進む。   If “NO” in the step S13, that is, if any one of the match flags is turned off, it is determined that the game is not cleared, and the process proceeds to a step S17 as it is. On the other hand, if “YES” in the step S13, that is, if all the coincidence flags are turned on, it is determined that the game is cleared, a game clear process is executed in a step S15, and the process proceeds to the step S17.

ステップS17では、ゲーム終了かどうかを判断する。つまり、ゲームオーバになったり、プレイヤによってゲーム終了の指示が与えられたりしたかどうかを判断する。ステップS17で“NO”であれば、つまりゲーム終了でなければ、ゲームを続行すると判断して、ステップS3に戻る。一方、ステップS17で“YES”であれば、つまりゲーム終了であれば、そのまま全体処理を終了する。   In step S17, it is determined whether or not the game is over. That is, it is determined whether or not the game is over or an instruction to end the game is given by the player. If “NO” in the step S17, that is, if the game is not ended, it is determined that the game is continued, and the process returns to the step S3. On the other hand, if “YES” in the step S17, that is, if the game is ended, the entire process is ended as it is.

図17は図16に示したステップS7の歯車オブジェクト回転処理のフロー図である。図17に示すように、CPUコア34は、歯車オブジェクト回転処理を開始すると、ステップS31で、変数iをリセットする(i=1)。ただし、変数iは歯車オブジェクトをカウントするために設定される。以下、同様である。次に、ステップS33では、直前フレームのタッチ位置f1を読み出し、ステップS35では、現フレームのタッチ位置f0を読み出す。つまり、CPUコア34は、データ記憶領域72に記憶された座標データ720および座標データ722を読み出す。   FIG. 17 is a flowchart of the gear object rotation process in step S7 shown in FIG. As shown in FIG. 17, when starting the gear object rotation process, the CPU core 34 resets the variable i in step S31 (i = 1). However, the variable i is set to count the gear object. The same applies hereinafter. Next, in step S33, the touch position f1 of the previous frame is read, and in step S35, the touch position f0 of the current frame is read. That is, the CPU core 34 reads the coordinate data 720 and the coordinate data 722 stored in the data storage area 72.

続くステップS37では、タッチ位置f0およびタッチ位置f1が歯車オブジェクトi上であるかどうかを判断する。つまり、歯車オブジェクトi上でタッチ操作されているかどうかを判断するのである。ステップS37で“NO”であれば、つまりタッチ位置f0またはタッチ位置f1のいずれか一方でも歯車オブジェクトi上でなければ、当該歯車オブジェクトiを回転させるためのタッチ操作ではないと判断して、そのままステップS55に進む。   In a succeeding step S37, it is determined whether or not the touch position f0 and the touch position f1 are on the gear object i. That is, it is determined whether or not a touch operation is performed on the gear object i. If “NO” in the step S37, that is, if either the touch position f0 or the touch position f1 is not on the gear object i, it is determined that the touch operation is not for rotating the gear object i, and the state is unchanged. Proceed to step S55.

しかし、ステップS37で“YES”であれば、つまりタッチ位置f0およびタッチ位置f1が歯車オブジェクトi上であれば、ステップS39で、歯車オブジェクトiの中心cと現フレームのタッチ位置f0からベクトルV0を求める。さらに、ステップS41で、ベクトルV0を正規化してベクトルU0を求める。ただし、上述したように、ベクトルU0はベクトルV0の単位ベクトルである。   However, if “YES” in the step S37, that is, if the touch position f0 and the touch position f1 are on the gear object i, the vector V0 is obtained from the center c of the gear object i and the touch position f0 of the current frame in a step S39. Ask. In step S41, the vector V0 is normalized to obtain the vector U0. However, as described above, the vector U0 is a unit vector of the vector V0.

続いて、ステップS43で、数1に従って、現フレームのタッチ位置f0に対応する円周上の位置r0を求め、ステップS45で、数2に従って、直前フレームのタッチ位置f1に対応する円周上の位置r1を求め、ステップS47で、位置r0と位置r1とからベクトルrVを求める。そして、ステップS49で、数3に従って、回転量Lを求める。   Subsequently, in step S43, a position r0 on the circumference corresponding to the touch position f0 of the current frame is obtained according to Equation 1, and in step S45, on the circumference corresponding to the touch position f1 of the immediately preceding frame according to Equation 2. A position r1 is obtained, and in step S47, a vector rV is obtained from the position r0 and the position r1. In step S49, the rotation amount L is obtained according to Equation 3.

その後、ステップS51で、回転量Lに基づいて歯車オブジェクトiを回転処理する。また、ステップS53で、歯車オブジェクトiに連動する歯車オブジェクトjを回転量Lに基づいて回転処理する。たとえば、歯車オブジェクトjは、歯車オブジェクトiと同じ角度だけ、同じ方向または反対方向に回転される。図示は省略するが、このステップS53の回転処理が実行されたときに、ソケットオブジェクトの角度オフセット値データ(800cなど)およびボールオブジェクトの角度オフセット値データ(90dなど)が更新される。   Thereafter, in step S51, the gear object i is rotated based on the rotation amount L. In step S53, the gear object j linked to the gear object i is rotated based on the rotation amount L. For example, gear object j is rotated in the same or opposite direction by the same angle as gear object i. Although illustration is omitted, when the rotation process of step S53 is executed, the angle offset value data (such as 800c) of the socket object and the angle offset value data (such as 90d) of the ball object are updated.

ステップS55では、変数iを1加算する(i=i+1)。そして、ステップS57では、変数iが最大値imaxを超えたかどうかを判断する。ただし、最大値imaxは歯車オブジェクトの総数である。ステップS57で“NO”であれば、つまり変数iが最大値imax以下であれば、そのままステップS33に戻って、次の歯車オブジェクトiについての処理を実行する。一方、ステップS57で“YES”であれば、つまり変数iが最大値imaxを超えていれば、すべての歯車オブジェクトiについての処理を終了したと判断して、全体処理にリターンする。   In step S55, the variable i is incremented by 1 (i = i + 1). In step S57, it is determined whether the variable i exceeds the maximum value imax. However, the maximum value imax is the total number of gear objects. If “NO” in the step S57, that is, if the variable i is equal to or less than the maximum value imax, the process returns to the step S33 as it is and the process for the next gear object i is executed. On the other hand, if “YES” in the step S57, that is, if the variable i exceeds the maximum value imax, it is determined that the processing for all the gear objects i is finished, and the process returns to the entire processing.

図18および図19は、図16に示したステップS9のソケット接続判別処理のフロー図である。図18に示すように、CPUコア34は、ソケット接続判別処理を開始すると、ステップS71で、変数iを初期化する(i=1)。続くステップS73では、歯車オブジェクトiの接続設定が有るかどうかを判断する。ステップS73で“NO”であれば、つまり歯車オブジェクトiの接続設定が無ければ、そのまま図19に示すステップS95に進む。   18 and 19 are flowcharts of the socket connection determination process in step S9 shown in FIG. As shown in FIG. 18, when starting the socket connection determination process, the CPU core 34 initializes a variable i in step S71 (i = 1). In a succeeding step S73, it is determined whether or not there is a connection setting for the gear object i. If “NO” in the step S73, that is, if there is no connection setting of the gear object i, the process directly proceeds to a step S95 shown in FIG.

しかし、ステップS73で“YES”であれば、つまり歯車オブジェクトiの接続設定が有れば、ステップS75で、変数sを初期設定する(s=1)。ただし、変数sは、歯車オブジェクトiに設けられるソケットオブジェクトsを識別するために設定される。以下、同様である。続いて、ステップS77で、変数s´を初期設定する(s´=1)。ただし、変数s´は、歯車オブジェクトiと接続設定される他の歯車オブジェクトi´に設けられるソケットオブジェクトs´を識別するために設定される。続いて、ステップS79では、歯車オブジェクトiに設けられるソケットオブジェクトsが不可視ソケットオブジェクトbsと重なるかどうかを判断する。具体的には、角度差Bを数8に従って算出し、この角度差Bが所定角度(たとえば、5度)未満であるかどうかを判断するのである。   However, if “YES” in the step S73, that is, if there is a connection setting of the gear object i, the variable s is initially set in a step S75 (s = 1). However, the variable s is set to identify the socket object s provided in the gear object i. The same applies hereinafter. Subsequently, in step S77, the variable s ′ is initialized (s ′ = 1). However, the variable s ′ is set to identify the socket object s ′ provided in the other gear object i ′ that is set to be connected to the gear object i. Subsequently, in step S79, it is determined whether or not the socket object s provided in the gear object i overlaps with the invisible socket object bs. Specifically, the angle difference B is calculated according to Equation 8, and it is determined whether the angle difference B is less than a predetermined angle (for example, 5 degrees).

ステップS79で“NO”であれば、つまり歯車オブジェクトiに設けられるソケットオブジェクトsが不可視ソケットオブジェクトbsと重ならない場合には、そのまま図19に示すステップS93に進む。一方、ステップS79で“YES”であれば、つまり歯車オブジェクトiに設けられるソケットオブジェクトsが不可視ソケットオブジェクトbsと重なる場合には、ステップS81で、歯車オブジェクトiに設けられるソケットオブジェクトsと、当該歯車オブジェクトiと接続設定された歯車オブジェクトi´に設けられるソケットオブジェクトs´との角度差Aを数4に従って算出する。   If “NO” in the step S79, that is, if the socket object s provided in the gear object i does not overlap the invisible socket object bs, the process directly proceeds to a step S93 shown in FIG. On the other hand, if “YES” in the step S79, that is, if the socket object s provided in the gear object i overlaps with the invisible socket object bs, the socket object s provided in the gear object i and the gear in step S81. The angle difference A between the object i and the socket object s ′ provided in the gear object i ′ set to be connected is calculated according to Equation 4.

次に、図19に示すステップS83で、角度差Aが一定角度mよりも大きいかどうかを判断する。この実施例では、一定角度mは5度に設定されるが、0度〜360度の間で任意に設定することが可能である。ステップS83で“YES”であれば、つまり角度差Aが一定角度m未満であれば、ステップS85で、ソケットオブジェクトsとソケットオブジェクトs´とを接続状態に設定して、つまり当該ソケットオブジェクトsについての接続フラグをオンして、ステップS89に進む。一方、ステップ83で“NO”であれば、つまり角度差Aが一定角度m以上であれば、ステップS87で、ソケットオブジェクトsとソケットオブジェクトs´とを非接続状態に設定して、つまり当該ソケットオブジェクトsの接続フラグをオフして、ステップS89に進む。   Next, in step S83 shown in FIG. 19, it is determined whether or not the angle difference A is larger than a certain angle m. In this embodiment, the constant angle m is set to 5 degrees, but can be arbitrarily set between 0 degrees and 360 degrees. If “YES” in the step S83, that is, if the angle difference A is less than the predetermined angle m, the socket object s and the socket object s ′ are set in the connected state in a step S85, that is, the socket object s is concerned. Is turned on, and the process proceeds to step S89. On the other hand, if “NO” in the step 83, that is, if the angle difference A is equal to or larger than the predetermined angle m, the socket object s and the socket object s ′ are set in a disconnected state in a step S87, that is, the socket concerned. The connection flag of the object s is turned off, and the process proceeds to step S89.

ステップS89では、変数s´を1加算する(s´=s´+1)。つまり、次のソケットオブジェクトs´について、接続状態の有無の設定処理を実行するのである。したがって、この実施例では、1つのソケットオブジェクトsに対して1つのソケットオブジェクトs´が接続状態とされるため、ステップS83で“YES”であり、ステップS85の処理を実行した場合にはそのままステップS97に進むようにしてもよい。   In step S89, the variable s ′ is incremented by 1 (s ′ = s ′ + 1). That is, for the next socket object s ′, the process for setting the presence / absence of a connection state is executed. Accordingly, in this embodiment, since one socket object s ′ is connected to one socket object s, “YES” is determined in the step S83, and when the process of the step S85 is executed, the step is performed as it is. You may make it progress to S97.

次のステップS91では、変数s´が最大値s´maxであるかどうかを判断する。ここで、最大値s´maxは歯車オブジェクトi´に設けられるソケットオブジェクトs´の総数である。つまり、ステップS91では、CPUコア34は、歯車オブジェクトi´の全てのソケットオブジェクトs´についての処理を終了したかどうかを判断する。   In the next step S91, it is determined whether or not the variable s ′ is the maximum value s′max. Here, the maximum value s′max is the total number of socket objects s ′ provided in the gear object i ′. That is, in step S91, the CPU core 34 determines whether or not the processing for all the socket objects s ′ of the gear object i ′ has been completed.

ステップS91で“NO”であれば、つまり変数s´が最大値s´max以下であれば、図18に示したステップS79に戻る。一方、ステップS91で“YES”であれば、つまり変数s´が最大値s´maxを超えれば、ステップS93で、変数sを1加算する(s=s+1)。続くステップS95では、変数sが最大値smaxを超えているかどうかを判断する。   If “NO” in the step S91, that is, if the variable s ′ is equal to or less than the maximum value s′max, the process returns to the step S79 shown in FIG. On the other hand, if “YES” in the step S91, that is, if the variable s ′ exceeds the maximum value s′max, the variable s is incremented by 1 in a step S93 (s = s + 1). In a succeeding step S95, it is determined whether or not the variable s exceeds the maximum value smax.

ステップS95で“NO”であれば、つまり変数sが最大値smax以下であれば、そのまま図18に示したステップS77に戻る。一方、ステップS95で“YES”であれば、つまり変数sが最大値smaxを超えていれば、ステップS97で、変数iを1加算する(i=i+1)。そして、ステップS99では、変数iが最大値imaxを超えているかどうかを判断する。   If “NO” in the step S95, that is, if the variable s is equal to or less than the maximum value smax, the process returns to the step S77 shown in FIG. On the other hand, if “YES” in the step S95, that is, if the variable s exceeds the maximum value smax, the variable i is incremented by 1 (i = i + 1) in a step S97. In step S99, it is determined whether or not the variable i exceeds the maximum value imax.

ステップS99で“NO”であれば、つまり変数iが最大値imax以下であれば、そのまま図18に示したステップS73に戻る。一方、ステップS99で“YES”であれば、つまり変数iが最大値imaxを超えれば、図16に示した全体処理にリターンする。   If “NO” in the step S99, that is, if the variable i is equal to or less than the maximum value imax, the process returns to the step S73 shown in FIG. On the other hand, if “YES” in the step S99, that is, if the variable i exceeds the maximum value imax, the process returns to the entire process shown in FIG.

図20および図21は、図16のステップS11に示したボール移動処理のフロー図である。図20に示すように、CPUコア34は、ボール移動処理を開始すると、ステップS111で、変数bを初期化する(b=1)。ここで、変数bは、ボールオブジェクトbを識別するために設定される。続くステップS113で、ボールオブジェクトbの回転角度B(B=sa+L)を算出する。次のステップS115では、変数bsを初期化する(bs=1)。ここで、変数bsは、不可視ソケットオブジェクトbsを識別するために設定される。次のステップS117では、ボールオブジェクトbと不可視ソケットオブジェクトbsとの角度差A´を数7に従って算出する。   20 and 21 are flowcharts of the ball movement process shown in step S11 of FIG. As shown in FIG. 20, when starting the ball movement process, the CPU core 34 initializes a variable b (b = 1) in step S111. Here, the variable b is set to identify the ball object b. In subsequent step S113, the rotation angle B (B = sa + L) of the ball object b is calculated. In the next step S115, the variable bs is initialized (bs = 1). Here, the variable bs is set to identify the invisible socket object bs. In the next step S117, the angle difference A ′ between the ball object b and the invisible socket object bs is calculated according to Equation 7.

続いて、ステップS119では、角度差A´が一定角度k未満であるかどうかを判断する。この実施例では、一定角度kは5度に設定されるが、0度〜360度の間で任意に設定することができる。ステップS119で“NO”であれば、つまり角度差A´が一定角度k以上であれば、そのまま図21に示すステップS133に進む。一方、ステップS119で“YES”であれば、つまり角度差A´が一定角度k未満であれば、ステップS121で、ボールオブジェクトbを保持するソケットオブジェクトsと、不可視ソケットオブジェクトbsに対して設けられた歯車オブジェクトi´に設けられるソケットオブジェクトs´の接続フラグがオンであるかどうかを判断する。   Subsequently, in step S119, it is determined whether or not the angle difference A ′ is less than a certain angle k. In this embodiment, the constant angle k is set to 5 degrees, but can be arbitrarily set between 0 degrees and 360 degrees. If “NO” in the step S119, that is, if the angle difference A ′ is equal to or larger than the predetermined angle k, the process proceeds to a step S133 shown in FIG. On the other hand, if “YES” in the step S119, that is, if the angle difference A ′ is less than the predetermined angle k, the socket object s that holds the ball object b and the invisible socket object bs are provided in the step S121. It is determined whether or not the connection flag of the socket object s ′ provided in the gear object i ′ is on.

ステップS121で“NO”であれば、つまりボールオブジェクトbを保持するソケットオブジェクトsと、不可視ソケットオブジェクトbsに対して設けられた歯車オブジェクトに設けられるソケットオブジェクトs´の接続フラグがオフであれば、そのままステップS133に進む。一方、ステップS121で“YES”であれば、つまりボールオブジェクトbを保持するソケットオブジェクトsと、不可視ソケットオブジェクトbsに対して設けられた歯車オブジェクトに設けられるソケットオブジェクトs´の接続フラグがオンであれば、ステップS123で、ボールオブジェクトbをソケットオブジェクトs´に移動して、図21に示すステップS125で、ボールオブジェクトbとソケットオブジェクトs´が設けられる歯車オブジェクトi´の色データを照合する。   If “NO” in the step S121, that is, if the connection flag between the socket object s holding the ball object b and the socket object s ′ provided in the gear object provided for the invisible socket object bs is off, The process proceeds to step S133 as it is. On the other hand, if “YES” in the step S121, that is, the connection flag of the socket object s ′ holding the ball object b and the socket object s ′ provided in the gear object provided for the invisible socket object bs is on. For example, the ball object b is moved to the socket object s ′ in step S123, and the color data of the gear object i ′ provided with the ball object b and the socket object s ′ is collated in step S125 shown in FIG.

続くステップS127では、ボールオブジェクトbと歯車オブジェクトi´との色が一致するかどうかを判断する。ステップS127で“YES”であれば、つまりボールオブジェクトbと歯車オブジェクトi´との色が一致すれば、ステップS129で、当該ソケットオブジェクトs´に設定される一致フラグをオンして、ステップS133に進む。一方、ステップS127で“NO”であれば、つまりボールオブジェクトbと歯車オブジェクトi´との色が一致しなければ、ステップS131で、当該ソケットオブジェクトs´に設定される一致フラグをオフして、ステップS133に進む。   In a succeeding step S127, it is determined whether or not the colors of the ball object b and the gear object i ′ match. If “YES” in the step S127, that is, if the colors of the ball object b and the gear object i ′ match, the matching flag set in the socket object s ′ is turned on in a step S129, and the process proceeds to the step S133. move on. On the other hand, if “NO” in the step S127, that is, if the colors of the ball object b and the gear object i ′ do not match, the matching flag set in the socket object s ′ is turned off in a step S131, The process proceeds to step S133.

ステップS133では、変数bsを1加算する(bs=bs+1)。そして、ステップS135で、変数bsが最大値bsmaxを超えるかどうかを判断する。ステップS135で“NO”であれば、つまり変数bsが最大値bsmax以下であれば、図20に示したステップS117に戻る。一方、ステップS135で“YES”であれば、つまり変数bsが最大値bsmaxを超えれば、ステップS137で、変数bを1加算する(b=b+1)。   In step S133, the variable bs is incremented by 1 (bs = bs + 1). In step S135, it is determined whether or not the variable bs exceeds the maximum value bsmax. If “NO” in the step S135, that is, if the variable bs is equal to or less than the maximum value bsmax, the process returns to the step S117 illustrated in FIG. On the other hand, if “YES” in the step S135, that is, if the variable bs exceeds the maximum value bsmax, the variable b is incremented by 1 in a step S137 (b = b + 1).

そして、ステップS139で、変数bが最大値bmaxを超えるかどうかを判断する。ステップS139で“NO”であれば、つまり変数bが最大値bmax以下であれば、図20に示したステップS113に戻る。一方、ステップS139で“YES”であれば、つまり変数bが最大値bmaxを超えれば、図16に示した全体処理にリターンする。   In step S139, it is determined whether the variable b exceeds the maximum value bmax. If “NO” in the step S139, that is, if the variable b is equal to or less than the maximum value bmax, the process returns to the step S113 illustrated in FIG. On the other hand, if “YES” in the step S139, that is, if the variable b exceeds the maximum value bmax, the process returns to the entire process shown in FIG.

この実施例によれば、歯車オブジェクトを回転させてボールオブジェクトを移動させることにより、パズルゲームをプレイするので、今までにないパズルゲームを楽しむことができる。   According to this embodiment, the puzzle game is played by rotating the gear object and moving the ball object, so that an unprecedented puzzle game can be enjoyed.

なお、この実施例では、分かり易くするために、歯車オブジェクトに対応して不可視歯車オブジェクトが設けられるようにしたが、少なくとも不可視ソケットオブジェクトを設定しておけばよいため、不可視歯車オブジェクトは省略することができる。かかる場合には、図15を用いて説明した位置データ100aおよびポリゴンデータ100bなど、不可視歯車オブジェクトに関するデータを省略することができる。   In this embodiment, in order to make it easy to understand, an invisible gear object is provided corresponding to the gear object. However, since at least an invisible socket object may be set, the invisible gear object is omitted. Can do. In such a case, data relating to the invisible gear object such as the position data 100a and the polygon data 100b described with reference to FIG. 15 can be omitted.

また、この実施例では、見た目と一致させて直感的にパズルゲームをプレイできるように、歯車オブジェクトやボールオブジェクトの形状を円形にしたが、この形状に限定される必要はない。たとえば、歯車オブジェクトやボールオブジェクトは、三角形や四角形のような多角形、または星型のような任意の形状であってもよい。   In this embodiment, the shape of the gear object and the ball object is circular so that the puzzle game can be played intuitively in accordance with the appearance, but it is not necessary to be limited to this shape. For example, the gear object or the ball object may be a polygon such as a triangle or a rectangle, or an arbitrary shape such as a star.

さらに、この実施例では、ポインティングデバイスとして、タッチパネルを用いるようにしたが、ペンタブレット、タッチパッド、コンピュータマウスのような他のポインティングデバイスを用いることも可能である。ただし、他のポインティングデバイスを用いる場合には、画面上の指示位置を示すためのマウスポインタのような指示画像を表示する必要がある。   Furthermore, in this embodiment, the touch panel is used as the pointing device, but other pointing devices such as a pen tablet, a touch pad, and a computer mouse can also be used. However, when using another pointing device, it is necessary to display an instruction image such as a mouse pointer for indicating an instruction position on the screen.

さらにまた、ゲーム装置の構成は、上述の実施例の構成に限定されるべきでない。たとえば、LCDは1つでもよく、タッチパネルは2つのLCDのそれぞれに設けるようにしてもよい。   Furthermore, the configuration of the game device should not be limited to the configuration of the above-described embodiment. For example, one LCD may be provided, and a touch panel may be provided on each of the two LCDs.

図1はこの発明のゲーム装置の一実施例を示す図解図である。FIG. 1 is an illustrative view showing one embodiment of a game apparatus of the present invention. 図2は図1に示すゲーム装置の電気的な構成を示すブロック図である。FIG. 2 is a block diagram showing an electrical configuration of the game apparatus shown in FIG. 図3は図1に示すゲーム装置の第1のLCDおよび第2のLCDに表示されるゲーム画面の一例を示す図解図である。FIG. 3 is an illustrative view showing one example of a game screen displayed on the first LCD and the second LCD of the game apparatus shown in FIG. 図4は図1に示すゲーム装置の第2のLCDに表示されるゲーム画面の他の実施例を示す図解図である。FIG. 4 is an illustrative view showing another embodiment of the game screen displayed on the second LCD of the game apparatus shown in FIG. 図5は図1に示すゲーム装置の第1のLCDおよび第2のLCDに表示されるゲーム画面の他の例を示す図解図である。FIG. 5 is an illustrative view showing another example of a game screen displayed on the first LCD and the second LCD of the game apparatus shown in FIG. 図6はゲーム画面に表示される歯車オブジェクトがプレイヤの操作に従って回転される回転量の算出方法を説明するための図解図である。FIG. 6 is an illustrative view for explaining a method of calculating the amount of rotation by which the gear object displayed on the game screen is rotated according to the operation of the player. 図7は歯車オブジェクトに設けられるソケットオブジェクトに保持されるボールオブジェクトおよび当該歯車オブジェクトに対応して設けられる不可視ソケットオブジェクトの角度オフセット値を説明するための図解図である。FIG. 7 is an illustrative view for explaining an angle offset value of a ball object held in a socket object provided in the gear object and an invisible socket object provided corresponding to the gear object. 図8は図1に示すゲーム装置の第1のLCDおよび第2のLCDに表示されるゲーム画面のそれぞれに対応して設けられる不可視歯車オブジェクトのレイヤを示す図解図である。FIG. 8 is an illustrative view showing layers of an invisible gear object provided corresponding to each of the game screens displayed on the first LCD and the second LCD of the game apparatus shown in FIG. 図9は歯車オブジェクト同士の接続設定の有無を説明するための図解図である。FIG. 9 is an illustrative view for explaining the presence / absence of connection setting between gear objects. 図10は隣接する2つの歯車オブジェクトに設けられるソケットオブジェクトの接続状態を説明するための図解図である。FIG. 10 is an illustrative view for explaining a connection state of socket objects provided in two adjacent gear objects. 図11は接続状態に有るソケットオブジェクト間をボールオブジェクトが移動する場合における、当該ボールオブジェクトの位置と、当該ボールオブジェクトを保持する歯車オブジェクトに隣接する歯車オブジェクトに対応して設けられる不可視ソケットオブジェクトとの位置を説明するための図解図である。FIG. 11 shows the position of the ball object and the invisible socket object provided corresponding to the gear object adjacent to the gear object holding the ball object when the ball object moves between the socket objects in the connected state. It is an illustration figure for demonstrating a position. 図12は図2に示すRAMのメモリマップの一例を示す図解図である。FIG. 12 is an illustrative view showing one example of a memory map of the RAM shown in FIG. 図13は図12に示すデータ記憶領域に設けられる歯車オブジェクトデータ記憶領域の具体的な内容を示す図解図である。FIG. 13 is an illustrative view showing specific contents of a gear object data storage area provided in the data storage area shown in FIG. 図14は図12に示すデータ記憶領域に設けられるボールオブジェクトデータ記憶領域の具体的な内容を示す図解図である。FIG. 14 is an illustrative view showing specific contents of a ball object data storage area provided in the data storage area shown in FIG. 図15は図12に示すデータ記憶領域に設けられる不可視歯車オブジェクトデータ記憶領域の具体的な内容を示す図解である。FIG. 15 is an illustration showing specific contents of the invisible gear object data storage area provided in the data storage area shown in FIG. 図16は図2に示すCPUコアのゲーム全体処理を示すフロー図である。FIG. 16 is a flowchart showing the entire game processing of the CPU core shown in FIG. 図17は図2に示すCPUコアの歯車オブジェクト回転処理を示すフロー図である。FIG. 17 is a flowchart showing the gear object rotation processing of the CPU core shown in FIG. 図18は図2に示すCPUコアのソケット接続判別処理の一部を示すフロー図である。FIG. 18 is a flowchart showing a part of the socket connection determination process of the CPU core shown in FIG. 図19は図2に示すCPUコアのソケット接続判別処理の他の一部であって、図18に後続するフロー図である。FIG. 19 is another part of the socket connection determination process of the CPU core shown in FIG. 2, and is a flowchart subsequent to FIG. 図20は図2に示すCPUコアのボール移動処理の一部を示すフロー図である。FIG. 20 is a flowchart showing a part of the ball movement process of the CPU core shown in FIG. 図21は図2に示すCPUコアのボール移動処理の他の一部であって、図20に後続するフロー図である。FIG. 21 is another part of the CPU core ball moving process shown in FIG. 2, and is a flowchart subsequent to FIG.

符号の説明Explanation of symbols

10 …ゲーム装置
12,14 …LCD
16,16a,16b …ハウジング
22 …操作スイッチ
24 …タッチパネル
26 …スティック
28 …メモリカード
28a …ROM
28b,42 …RAM
34 …CPUコア
36a,36b …スピーカ
44,46 …GPU
48 …I/F回路
50 …LCDコントローラ
52,54 …VRAM
10 ... Game device 12, 14 ... LCD
16, 16a, 16b ... housing 22 ... operation switch 24 ... touch panel 26 ... stick 28 ... memory card 28a ... ROM
28b, 42 ... RAM
34 ... CPU core 36a, 36b ... Speaker 44, 46 ... GPU
48 ... I / F circuit 50 ... LCD controller 52, 54 ... VRAM

Claims (9)

記憶手段、表示手段および操作手段を備えるパズルゲーム装置のパズルゲームプログラムであって、
前記パズルゲーム装置のコンピュータに、
前記記憶手段に記憶される画像データを用いて、少なくとも1つの受容部が設けられた回転オブジェクトを複数配置するとともに、少なくとも1つの移動オブジェクトがいずれかの受容部に受容されたゲーム画像を前記表示手段に表示するゲーム画像表示ステップ、
プレイヤの操作に応じて前記操作手段から入力される操作データに従って前記回転オブジェクトを回転させる回転処理ステップ、
前記移動オブジェクトが受容された第1受容部と、当該第1受容部が設けられる回転オブジェクトとは異なる他の回転オブジェクトに設けられた第2受容部との間において当該移動オブジェクトが移動可能であることの接続設定が有るかどうかを判断する接続設定判断ステップ、
前記回転処理ステップによって前記回転オブジェクトを回転させた結果、前記接続設定判断ステップによって前記接続設定が有ると判断された前記第1受容部と前記第2受容部とが所定の関係になったか否かを判別する関係判別ステップ、および
前記関係判別ステップによって所定の関係になったことが判別されたとき、前記移動オブジェクトを前記第1受容部から前記第2受容部に移動するように前記ゲーム画像を更新する移動処理ステップを実行させる、パズルゲームプログラム。
A puzzle game program for a puzzle game apparatus comprising storage means, display means and operation means,
In the computer of the puzzle game device,
Using the image data stored in the storage means, a plurality of rotating objects provided with at least one receiving unit are arranged, and a game image in which at least one moving object is received in any receiving unit is displayed. A game image display step for displaying on the means;
A rotation processing step of rotating the rotating object in accordance with operation data input from the operation means according to a player's operation;
The mobile object is movable between said and first receiving portion moving object is received, the second receiving portion to which the first receiving portion is provided on the other different rotation object and the rotating object provided Connection setting determination step for determining whether or not there is a connection setting,
As a result of rotating the rotating object in the rotation processing step, whether or not the first receiving unit and the second receiving unit determined to have the connection setting in the connection setting determining step have a predetermined relationship A relationship determining step for determining the game image, and when the relationship determining step determines that a predetermined relationship has been established, the game image is moved so as to move the moving object from the first receiving portion to the second receiving portion. A puzzle game program for executing a moving process step to be updated.
前記記憶手段には、前記移動オブジェクトおよび前記回転オブジェクトのそれぞれの属性が設定されており、
前記移動オブジェクトの属性と前記移動オブジェクトが受容された回転オブジェクトの属性とが同一か否かを判別する属性判別ステップ、および
前記属性判別ステップによって同一であると判別されたとき、ゲームの進行を変化させるゲーム処理ステップを前記コンピュータにさらに実行させる、請求項1記載のパズルゲームプログラム。
Each attribute of the moving object and the rotating object is set in the storage means,
An attribute determining step for determining whether or not the attribute of the moving object is the same as the attribute of the rotating object in which the moving object is received; and when the attribute determining step determines that the attribute is the same, the progress of the game is changed The puzzle game program according to claim 1, further causing the computer to execute a game processing step.
前記回転オブジェクトは、前記プレイヤの操作を許容する第1回転オブジェクトと、前記プレイヤの操作を許容しない第2回転オブジェクトとを含み、
前記回転処理ステップは、前記プレイヤの操作に応じて前記操作手段から入力される操作データに従って前記第1回転オブジェクトを回転させたとき、前記第1回転オブジェクトの回転に基づいて前記第2回転オブジェクトを回転させる、請求項1または2記載のパズルゲームプログラム。
The rotating object includes a first rotating object that allows the player to operate, and a second rotating object that does not allow the player to operate,
In the rotation processing step, when the first rotating object is rotated according to operation data input from the operating means in accordance with an operation of the player, the second rotating object is moved based on the rotation of the first rotating object. The puzzle game program according to claim 1, wherein the puzzle game program is rotated.
前記回転オブジェクトは、複数の前記第1回転オブジェクトおよび複数の前記第2回転オブジェクトを含み、
前記回転処理ステップは、少なくとも1つの前記第1回転オブジェクトの回転に基づいて、1つまたは複数の前記第2回転オブジェクトを回転させる、請求項3記載のパズルゲームプログラム。
The rotating object includes a plurality of the first rotating objects and a plurality of the second rotating objects,
The puzzle game program according to claim 3, wherein the rotation processing step rotates one or a plurality of the second rotation objects based on rotation of at least one of the first rotation objects.
前記回転処理ステップによって前記回転オブジェクトを回転させた結果に基づいて、前記回転オブジェクトに設定される基準位置に対する前記第1受容部の第1角度と他の前記回転オブジェクトに設定される基準位置に対する前記第2受容部の第2角度とをそれぞれ算出する角度算出ステップを前記コンピュータにさらに実行させ、
前記関係判別ステップは、前記第1角度と前記第2角度との差が所定範囲内であるか否かを判別し、
前記移動処理ステップは、前記関係判別ステップによって前記差が所定範囲内であることが判別されたとき、前記記憶手段に記憶された前記移動オブジェクトの位置データを更新して、当該移動オブジェクトを前記第1受容部から前記第2受容部に移動するように前記ゲーム画像を更新する、請求項1ないし4のいずれかに記載のパズルゲームプログラム。
Based on the result of rotating the rotating object in the rotation processing step, the first angle of the first receiving unit with respect to a reference position set for the rotating object and the reference position set for another rotating object. Causing the computer to further execute an angle calculating step of calculating a second angle of the second receiving part,
The relationship determining step determines whether or not a difference between the first angle and the second angle is within a predetermined range;
The movement processing step updates the position data of the moving object stored in the storage means when the difference determining step determines that the difference is within a predetermined range, and moves the moving object to the first step. The puzzle game program according to any one of claims 1 to 4, wherein the game image is updated so as to move from one receiving unit to the second receiving unit.
プレイヤの操作によって指示された画面上の位置を前記操作手段から入力される操作データに従って検出する位置検出ステップ、および
前記位置検出ステップによって検出された位置が前記回転オブジェクトを指示しているか否かを判別する位置判別ステップを前記コンピュータにさらに実行させ、
前記回転処理ステップは、前記位置判別ステップによって前記回転オブジェクトを指示していることが判別されたとき、所定時間毎の位置変化に基づいて前記回転オブジェクトを回転させる、請求項1または2記載のパズルゲームプログラム。
A position detecting step for detecting a position on the screen instructed by the operation of the player in accordance with operation data input from the operating means, and whether or not the position detected by the position detecting step indicates the rotating object. Causing the computer to further execute a position determining step for determining;
3. The puzzle according to claim 1, wherein the rotation processing step rotates the rotating object based on a change in position every predetermined time when it is determined by the position determining step that the rotating object is instructed. Game program.
少なくとも1つの受容部が設けられた回転オブジェクトを複数配置するとともに、少なくとも1つの移動オブジェクトがいずれかの受容部に受容されたゲーム画像を表示するゲーム画像表示手段、
プレイヤの操作に応じて前記回転オブジェクトを回転させる回転処理手段、
前記移動オブジェクトが受容された第1受容部と、当該第1受容部が設けられる回転オブジェクトとは異なる他の回転オブジェクトに設けられた第2受容部との間において当該移動オブジェクトが移動可能であることの接続設定が有るかどうかを判断する接続設定判断手段、
前記回転処理手段によって前記回転オブジェクトを回転させた結果、前記接続設定判断手段によって前記接続設定が有ると判断された前記第1受容部と前記第2受容部とが所定の関係になったか否かを判別する関係判別手段、および
前記関係判別手段によって所定の関係になったことが判別されたとき、前記移動オブジェクトを前記第2受容部に移動させる移動処理手段を備える、パズルゲーム装置。
A game image display means for arranging a plurality of rotating objects provided with at least one receiving portion and displaying a game image in which at least one moving object is received in any receiving portion;
Rotation processing means for rotating the rotating object in response to an operation by a player;
The mobile object is movable between said and first receiving portion moving object is received, the second receiving portion to which the first receiving portion is provided on the other different rotation object and the rotating object provided Connection setting determining means for determining whether there is a connection setting of
As a result of rotating the rotating object by the rotation processing unit, whether or not the first receiving unit and the second receiving unit determined to have the connection setting by the connection setting determining unit have a predetermined relationship A puzzle game apparatus, comprising: a relationship determining unit that determines the movement object; and a movement processing unit that moves the moving object to the second receiving unit when the relationship determining unit determines that a predetermined relationship has been established.
少なくとも1つの受容部が設けられた回転オブジェクトを複数配置するとともに、少なくとも1つの移動オブジェクトがいずれかの受容部に受容されたゲーム画像を表示するゲーム画像表示手段、
プレイヤの操作に応じて前記回転オブジェクトを回転させる回転処理手段、
前記移動オブジェクトが受容された第1受容部と、当該第1受容部が設けられる回転オブジェクトとは異なる他の回転オブジェクトに設けられた第2受容部との間において当該移動オブジェクトが移動可能であることの接続設定が有るかどうかを判断する接続設定判断手段、
前記回転処理手段によって前記回転オブジェクトを回転させた結果、前記接続設定判断手段によって前記接続設定が有ると判断された前記第1受容部と前記第2受容部とが所定の関係になったか否かを判別する関係判別手段、および
前記関係判別手段によって所定の関係になったことが判別されたとき、前記移動オブジェクトを前記第2受容部に移動させる移動処理手段を備える、パズルゲームシステム。
A game image display means for arranging a plurality of rotating objects provided with at least one receiving portion and displaying a game image in which at least one moving object is received in any receiving portion;
Rotation processing means for rotating the rotating object in response to an operation by a player;
The mobile object is movable between said and first receiving portion moving object is received, the second receiving portion to which the first receiving portion is provided on the other different rotation object and the rotating object provided Connection setting determining means for determining whether there is a connection setting of
As a result of rotating the rotating object by the rotation processing unit, whether or not the first receiving unit and the second receiving unit determined to have the connection setting by the connection setting determining unit have a predetermined relationship A puzzle game system, comprising: a relationship determining means for determining the movement object; and a movement processing means for moving the moving object to the second receiving portion when it is determined by the relationship determining means that a predetermined relationship has been established.
記憶手段、表示手段および操作手段を備えるパズルゲーム装置のゲーム制御方法であって、
前記パズルゲーム装置のコンピュータは、
(a)前記記憶手段に記憶される画像データを用いて、少なくとも1つの受容部が設けられた回転オブジェクトを複数配置するとともに、少なくとも1つの移動オブジェクトがいずれかの受容部に受容されたゲーム画像を前記表示手段に表示し、
(b)プレイヤの操作に応じて前記操作手段から入力される操作データに従って前記回転オブジェクトを回転させ、
(c)前記移動オブジェクトが受容された第1受容部と、当該第1受容部が設けられる回転オブジェクトとは異なる他の回転オブジェクトに設けられた第2受容部との間において当該移動オブジェクトが移動可能であることの接続設定が有るかどうかを判断し、
(d)前記ステップ(b)において前記回転オブジェクトを回転させた結果、前記ステップ(c)において前記接続設定が有ると判断された前記第1受容部と前記第2受容部とが所定の関係になったか否かを判別し、そして
(e)前記ステップ(d)において所定の関係になったことを判別したとき、前記移動オブジェクトを前記第1受容部から前記第2受容部に移動するように前記ゲーム画像を更新する、ゲーム制御方法
A game control method for a puzzle game apparatus comprising storage means, display means and operation means,
The computer of the puzzle game apparatus comprises:
(A) A game image in which a plurality of rotating objects provided with at least one receiving unit are arranged using image data stored in the storage unit, and at least one moving object is received in any receiving unit Is displayed on the display means,
(B) rotating the rotating object in accordance with operation data input from the operation means in accordance with a player's operation;
(C) a first receiving portion in which the moving object is received, the mobile object moves between the second receiving portion provided on the other different rotation object and the rotating object to which the first receiving portion is provided Determine if there is a connection setting that is possible,
(D) As a result of rotating the rotating object in the step (b), the first receiving unit and the second receiving unit that are determined to have the connection setting in the step (c) have a predetermined relationship. And (e) moving the moving object from the first receiving unit to the second receiving unit when it is determined in step (d) that the predetermined relationship has been established. A game control method for updating the game image.
JP2007141936A 2007-05-29 2007-05-29 Puzzle game program, puzzle game apparatus, puzzle game system, and game control method Active JP5395335B2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2007141936A JP5395335B2 (en) 2007-05-29 2007-05-29 Puzzle game program, puzzle game apparatus, puzzle game system, and game control method
US12/068,056 US20080300033A1 (en) 2007-05-29 2008-02-01 Storage medium storing puzzle game program, puzzle game apparatus, and puzzle game controlling method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007141936A JP5395335B2 (en) 2007-05-29 2007-05-29 Puzzle game program, puzzle game apparatus, puzzle game system, and game control method

Publications (2)

Publication Number Publication Date
JP2008295530A JP2008295530A (en) 2008-12-11
JP5395335B2 true JP5395335B2 (en) 2014-01-22

Family

ID=40088926

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007141936A Active JP5395335B2 (en) 2007-05-29 2007-05-29 Puzzle game program, puzzle game apparatus, puzzle game system, and game control method

Country Status (2)

Country Link
US (1) US20080300033A1 (en)
JP (1) JP5395335B2 (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8727878B2 (en) * 2008-07-18 2014-05-20 Disney Enterprises, Inc. Video game controller
KR100925971B1 (en) * 2009-01-23 2009-11-09 허익준 Central Access Control Unit
JP5806799B2 (en) * 2009-01-26 2015-11-10 任天堂株式会社 Information processing apparatus, information processing program, information processing system, and information processing method
JP5724026B1 (en) * 2014-08-29 2015-05-27 グリー株式会社 GAME PROGRAM, COMPUTER CONTROL METHOD, AND COMPUTER

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3592471A (en) * 1969-08-06 1971-07-13 Western Publishing Co Gravity projector game device
US3655194A (en) * 1970-04-27 1972-04-11 Daniel H Pierson Board game apparatus
US4376537A (en) * 1980-10-23 1983-03-15 Nintendo Co., Ltd. Rotary puzzle device
US4395041A (en) * 1981-02-11 1983-07-26 Adolph E. Goldfarb Ball transfer and capture game and method
JPS5843491U (en) * 1981-09-14 1983-03-23 株式会社トミー ball feeding puzzle toy
US4509753A (en) * 1983-05-23 1985-04-09 Vaughan Jr Philip M Hidden passage ball puzzle
US5451055A (en) * 1994-08-18 1995-09-19 Lo; Wei W. Tower puzzle toy
US5577185A (en) * 1994-11-10 1996-11-19 Dynamix, Inc. Computerized puzzle gaming method and apparatus
JP2004230115A (en) * 2003-01-31 2004-08-19 Masaru Iwata Toy and computer game using friction drive
JP4738019B2 (en) * 2005-02-23 2011-08-03 任天堂株式会社 GAME PROGRAM, GAME DEVICE, GAME CONTROL METHOD, AND GAME SYSTEM
JP2006314611A (en) * 2005-05-13 2006-11-24 Copcom Co Ltd Video game device, program for achieving the video game device and recording medium
JP5220272B2 (en) * 2005-11-04 2013-06-26 任天堂株式会社 GAME DEVICE AND GAME PROGRAM

Also Published As

Publication number Publication date
JP2008295530A (en) 2008-12-11
US20080300033A1 (en) 2008-12-04

Similar Documents

Publication Publication Date Title
JP5106825B2 (en) GAME PROGRAM, GAME DEVICE, GAME SYSTEM, AND GAME CONTROL METHOD
JP5606669B2 (en) 3D puzzle game apparatus, game program, 3D puzzle game system, and game control method
JP4603931B2 (en) Object movement control device and object movement control program
US8574069B2 (en) Hand-held game apparatus and game program
US8113954B2 (en) Game apparatus, storage medium storing game program and game controlling method for touch input monitoring
JP4388004B2 (en) Image generating apparatus and method, program, and recording medium
JP3833228B2 (en) GAME DEVICE AND GAME PROGRAM
JP2007296220A (en) Game program and game device
JP5395335B2 (en) Puzzle game program, puzzle game apparatus, puzzle game system, and game control method
JP4864117B2 (en) Image generating apparatus and method, program, and recording medium
JP5687826B2 (en) GAME PROGRAM AND GAME DEVICE
EP1854520B1 (en) Game program and game apparatus
JP2020182532A (en) Game program, game system, game device, and game controlling method
JP5395387B2 (en) Puzzle game program, puzzle game apparatus, puzzle game system, and game control method
JP6301813B2 (en) GAME PROGRAM AND GAME DEVICE
JP4143590B2 (en) 3D image processing apparatus, game apparatus, 3D image processing program, and game program
JP4307317B2 (en) GAME DEVICE AND GAME PROGRAM
JP4287764B2 (en) Competitive game device and competitive game program
JP4061278B2 (en) GAME DEVICE AND GAME PROGRAM
JP4782167B2 (en) Competitive game device and competitive game program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100506

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130305

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130423

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130806

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130829

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20131008

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20131018

R150 Certificate of patent or registration of utility model

Ref document number: 5395335

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250