Ticket #20041

壁の中での速駆け発動

Open Date: 2009-12-28 17:11 Last Update: 2020-12-20 21:29

Reporter:
(Anonymous)
Owner:
Type:
Status:
Closed
Component:
(None)
Priority:
3
Severity:
5 - Medium
Resolution:
Fixed
File:
None

Details

壁の中でも速駆け状態になることができ、また壁の中に移動して速駆けが解除されても
そのターンのエネルギー消費は低減されるため、両者を交互に行うことで
結果的に壁の中を速駆けすることができてしまう

以下は発動時にチェックするパッチだが、プレイヤーターンの終了時か開始時にチェックした方がよいかもしれない

  1. diff --git a/src/racial.c b/src/racial.c
  2. index c0d3ded..80a8790 100644
  3. --- a/src/racial.c
  4. +++ b/src/racial.c
  5. @@ -1407,8 +1407,29 @@ static bool cmd_racial_power_aux(s32b command)
  6. }
  7. case CLASS_NINJA:
  8. {
  9. - if (p_ptr->action == ACTION_HAYAGAKE) set_action(ACTION_NONE);
  10. - else set_action(ACTION_HAYAGAKE);
  11. + if (p_ptr->action == ACTION_HAYAGAKE)
  12. + {
  13. + set_action(ACTION_NONE);
  14. + }
  15. + else
  16. + {
  17. + cave_type *c_ptr = &cave[py][px];
  18. + feature_type *f_ptr = &f_info[c_ptr->feat];
  19. +
  20. + if (!have_flag(f_ptr->flags, FF_PROJECT) ||
  21. + (!p_ptr->levitation && have_flag(f_ptr->flags, FF_DEEP)))
  22. + {
  23. +#ifdef JP
  24. + msg_print("ここでは素早く動けない。");
  25. +#else
  26. + msg_print("You cannot run in here.");
  27. +#endif
  28. + }
  29. + else
  30. + {
  31. + set_action(ACTION_HAYAGAKE);
  32. + }
  33. + }
  34. energy_use = 0;
  35. break;
  36. }

Ticket History (3/4 Histories)

2009-12-28 17:11 Updated by: None
  • New Ticket "壁の中での速駆け発動" created
2011-03-09 01:54 Updated by: deskull
  • Owner Update from (None) to deskull
2011-03-09 01:56 Updated by: deskull
  • Ticket Close date is changed to 2011-03-09 01:56
  • Status Update from Open to Closed
Comment

用意していただいた差分を利用の上、effects.c上で消費エネルギーを即座に通常の移動に戻す仕様に修正してみました。 ご協力ありがとうございます。

2020-12-20 21:29 Updated by: deskull

Attachment File List

No attachments

Edit

Please login to add comment to this ticket » Login