Репозиторий Sisyphus
Последнее обновление: 1 октября 2023 | Пакетов: 18631 | Посещений: 37048214
en ru br
Репозитории ALT
S:14.7-alt1.svn9619
5.1: 13.6-alt1.svn7713
4.1: 12.4-alt1.svn6075
4.0: 11.0-alt1.svn3836
www.altlinux.org/Changes

Группа :: Игры/Приключения
Пакет: KoLmafia

 Главная   Изменения   Спек   Патчи   Sources   Загрузить   Gear   Bugs and FR  Repocop 

Патч: KoLmafia-14.7-alt-llama-gong.patch
Скачать


 src/data/defaults.txt                              |    1 +
 src/net/sourceforge/kolmafia/KoLCharacter.java     |   15 +++++++++++++++
 .../sourceforge/kolmafia/request/FightRequest.java |   15 +++++++++++++++
 .../kolmafia/request/UseItemRequest.java           |   10 ++++++++++
 4 files changed, 41 insertions(+), 0 deletions(-)
diff --git a/src/data/defaults.txt b/src/data/defaults.txt
index 718a7b5..8d0bf41 100644
--- a/src/data/defaults.txt
+++ b/src/data/defaults.txt
@@ -489,6 +489,7 @@ user	lastVioletFogMap	0
 user	lastZapperWand	0
 user	libramSummons	0
 user	libraryCardUsed	false
+user	llamaSeen	true
 user	louvreDesiredGoal	7
 user	louvreGoal	0
 user	louvreLayout
diff --git a/src/net/sourceforge/kolmafia/KoLCharacter.java b/src/net/sourceforge/kolmafia/KoLCharacter.java
index 43ae14d..de67524 100644
--- a/src/net/sourceforge/kolmafia/KoLCharacter.java
+++ b/src/net/sourceforge/kolmafia/KoLCharacter.java
@@ -2926,6 +2926,21 @@ public abstract class KoLCharacter
 			KoLCharacter.addAvailableSkill( "Moxious Maneuver" );
 		}
 
+		// Bird-form and mole-form skills are available for all classes
+		// Bird form regular
+		KoLCharacter.addAvailableSkill( "Vicious Talon Slash" );
+		KoLCharacter.addAvailableSkill( "All-You-Can-Beat Wing Buffet" );
+		KoLCharacter.addAvailableSkill( "Get a You-Eye View" );
+		// Mole form regular
+		KoLCharacter.addAvailableSkill( "Tunnel Upwards" );
+		KoLCharacter.addAvailableSkill( "Tunnel Downwards" );
+		// Bird form elemental bugs skills
+		KoLCharacter.addAvailableSkill( "Rise From Your Ashes" );
+		KoLCharacter.addAvailableSkill( "Antarctic Flap" );
+		KoLCharacter.addAvailableSkill( "Feast on Carrion" );
+		KoLCharacter.addAvailableSkill( "The Statue Treatment" );
+		KoLCharacter.addAvailableSkill( "Give Your Opponent "The Bird"" );
+
 		// Check all available skills to see if they
 		// qualify to be added as combat or usables.
 
diff --git a/src/net/sourceforge/kolmafia/request/FightRequest.java b/src/net/sourceforge/kolmafia/request/FightRequest.java
index 9979a37..0510dd2 100644
--- a/src/net/sourceforge/kolmafia/request/FightRequest.java
+++ b/src/net/sourceforge/kolmafia/request/FightRequest.java
@@ -224,6 +224,7 @@ public class FightRequest
 	private static boolean castNoodles = false;
 	private static boolean castCleesh = false;
 	private static boolean jiggledChefstaff = false;
+	private static boolean dugTunnel = false;
 	private static boolean squeezedStressBall = false;
 	private static boolean canOlfact = true;
 	private static boolean summonedGhost = false;
@@ -1077,6 +1078,20 @@ public class FightRequest
 				return;
 			}
 		}
+
+		// only one tunnel action per fight
+		else if ( skillName.equals( "Tunnel Upwards") ||
+				skillName.equals("Tunnel Downwards") )
+		{
+			if (FightRequest.dugTunnel)
+			{
+				FightRequest.nextAction = "attack";
+				this.addFormField( "action", FightRequest.nextAction );
+				return;
+			}
+			FightRequest.dugTunnel = true;
+		}
+
 		else if ( skillName.equals( "Fire a poison arrow" ) )
 		{
 			// You can only shoot 10 poison arrows per day
diff --git a/src/net/sourceforge/kolmafia/request/UseItemRequest.java b/src/net/sourceforge/kolmafia/request/UseItemRequest.java
index 6392bb4..99fc0ae 100644
--- a/src/net/sourceforge/kolmafia/request/UseItemRequest.java
+++ b/src/net/sourceforge/kolmafia/request/UseItemRequest.java
@@ -542,6 +542,16 @@ public class UseItemRequest
 
 		Integer key = new Integer( itemId );
 
+		// Gongs can only be used if we are not in form of anything
+		if (itemId == ItemPool.GONG)
+		{
+			if (KoLConstants.activeEffects.contains(EffectPool.get(EffectPool.FORM_OF_BIRD)) ||
+				KoLConstants.activeEffects.contains(EffectPool.get(EffectPool.SHAPE_OF_MOLE)) ||
+				KoLConstants.activeEffects.contains(EffectPool.get(EffectPool.FORM_OF_ROACH)))
+				return 0;
+			return Preferences.getBoolean("llamaSeen")?1:0;
+		}
+
 		if ( UseItemRequest.LIMITED_USES.containsKey( key ) )
 		{
 			UseItemRequest.limiter = "unstackable effect";
 
дизайн и разработка: Vladimir Lettiev aka crux © 2004-2005, Andrew Avramenko aka liks © 2007-2008
текущий майнтейнер: Michael Shigorin