• R/O
  • HTTP
  • SSH
  • HTTPS

hengband: Commit

変愚蛮怒のメインリポジトリです


Commit MetaInfo

Revision5e25da216484e4aa040ea8645898750780c586a8 (tree)
Time2019-02-06 23:43:10
AuthorDeskull <deskull@user...>
CommiterDeskull

Log Message

[Refactor] #37353 summon_cyber() を spells-summon.c へ移動。 / Move summon_cyber() to spells-summon.c.

Change Summary

Incremental Difference

--- a/src/externs.h
+++ b/src/externs.h
@@ -940,7 +940,6 @@ extern bool animate_dead(MONSTER_IDX who, POSITION y, POSITION x);
940940 extern bool sleep_monsters_touch(void);
941941 extern bool activate_ty_curse(bool stop_ty, int *count);
942942 extern int activate_hi_summon(POSITION y, POSITION x, bool can_pet);
943-extern int summon_cyber(MONSTER_IDX who, POSITION y, POSITION x);
944943 extern void wall_breaker(void);
945944 extern bool confuse_monsters(HIT_POINT dam);
946945 extern bool charm_monsters(HIT_POINT dam);
--- a/src/spells-summon.c
+++ b/src/spells-summon.c
@@ -271,3 +271,34 @@ bool summon_kin_player(DEPTH level, POSITION y, POSITION x, BIT_FLAGS mode)
271271 }
272272 return summon_specific((pet ? -1 : 0), y, x, level, SUMMON_KIN, mode, symbol);
273273 }
274+
275+/*!
276+ * @brief サイバーデーモンの召喚
277+ * @param who 召喚主のモンスターID(0ならばプレイヤー)
278+ * @param y 召喚位置Y座標
279+ * @param x 召喚位置X座標
280+ * @return 作用が実際にあった場合TRUEを返す
281+ */
282+int summon_cyber(MONSTER_IDX who, POSITION y, POSITION x)
283+{
284+ int i;
285+ int max_cyber = (easy_band ? 1 : (dun_level / 50) + randint1(2));
286+ int count = 0;
287+ BIT_FLAGS mode = PM_ALLOW_GROUP;
288+
289+ /* Summoned by a monster */
290+ if (who > 0)
291+ {
292+ monster_type *m_ptr = &m_list[who];
293+ if (is_pet(m_ptr)) mode |= PM_FORCE_PET;
294+ }
295+
296+ if (max_cyber > 4) max_cyber = 4;
297+
298+ for (i = 0; i < max_cyber; i++)
299+ {
300+ count += summon_specific(who, y, x, 100, SUMMON_CYBER, mode, '\0');
301+ }
302+
303+ return count;
304+}
\ No newline at end of file
--- a/src/spells-summon.h
+++ b/src/spells-summon.h
@@ -9,4 +9,5 @@ extern bool cast_summon_demon(int power);
99 extern bool item_tester_offer(object_type *o_ptr);
1010 extern bool cast_summon_greater_demon(void);
1111 extern bool summon_kin_player(DEPTH level, POSITION y, POSITION x, BIT_FLAGS mode);
12+extern int summon_cyber(MONSTER_IDX who, POSITION y, POSITION x);
1213
--- a/src/spells2.c
+++ b/src/spells2.c
@@ -3492,38 +3492,6 @@ int activate_hi_summon(POSITION y, POSITION x, bool can_pet)
34923492 return count;
34933493 }
34943494
3495-
3496-/*!
3497- * @brief サイバーデーモンの召喚
3498- * @param who 召喚主のモンスターID(0ならばプレイヤー)
3499- * @param y 召喚位置Y座標
3500- * @param x 召喚位置X座標
3501- * @return 作用が実際にあった場合TRUEを返す
3502- */
3503-int summon_cyber(MONSTER_IDX who, POSITION y, POSITION x)
3504-{
3505- int i;
3506- int max_cyber = (easy_band ? 1 : (dun_level / 50) + randint1(2));
3507- int count = 0;
3508- BIT_FLAGS mode = PM_ALLOW_GROUP;
3509-
3510- /* Summoned by a monster */
3511- if (who > 0)
3512- {
3513- monster_type *m_ptr = &m_list[who];
3514- if (is_pet(m_ptr)) mode |= PM_FORCE_PET;
3515- }
3516-
3517- if (max_cyber > 4) max_cyber = 4;
3518-
3519- for (i = 0; i < max_cyber; i++)
3520- {
3521- count += summon_specific(who, y, x, 100, SUMMON_CYBER, mode, '\0');
3522- }
3523-
3524- return count;
3525-}
3526-
35273495 /*!
35283496 * @brief 周辺破壊効果(プレイヤー中心)
35293497 * @return 作用が実際にあった場合TRUEを返す
Show on old repository browser