Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // Decompiled by Jad v1.5.8g. Copyright 2001 Pavel Kouznetsov.
- // Jad home page: http://www.kpdus.com/jad.html
- // Decompiler options: packimports(3)
- // Source File Name: SourceFile
- import java.util.*;
- public class ygTranslated extends rg
- implements agf, yf
- {
- public ygTranslated(agv agv1)
- {
- this(agv1, 0);
- }
- public ygTranslated(agv agv1, int l)
- {
- super(agv1);
- setProfession(l);
- a(0.6F, 1.8F);
- m().b(true);
- m().a(true);
- e.a(0, new to(this));
- e.a(1, new tf(this, yb, 8F, 0.59999999999999998D, 0.59999999999999998D));
- e.a(1, new uu(this));
- e.a(1, new tx(this));
- e.a(2, new ua(this));
- e.a(3, new un(this));
- e.a(4, new uh(this, true));
- e.a(5, new uc(this, 0.59999999999999998D));
- e.a(6, new ty(this));
- e.a(7, new us(this));
- e.a(8, new uj(this, 0.32000000000000001D));
- e.a(9, new tu(this, yr, 3F, 1.0F));
- e.a(9, new tu(this, yg, 5F, 0.02F));
- e.a(9, new ul(this, 0.59999999999999998D));
- e.a(10, new tw(this, sf, 8F));
- }
- protected void aC()
- {
- super.aC();
- a(xu.d).a(0.5D);
- }
- public boolean bj()
- {
- return true;
- }
- protected void bo()
- {
- if(--villageAITick <= 0)
- {
- ct vector = new ct(this);
- o.ae().a(vector); // Add to ?
- villageAITick = 70 + Z.nextInt(50);
- village = o.ae().a(vector, 32); // Find nearest village
- if(village == null)
- {
- bX();
- } else
- {
- ct villageCenter = village.a();
- a(villageCenter, (int)((float)village.b() * 0.6F));
- if(bE)
- {
- bE = false;
- village.b(5); // 5 rep points to any player known by the village
- }
- }
- }
- if(!trading() && refreshTick > 0)
- {
- refreshTick--;
- if(refreshTick <= 0)
- {
- if(doRefresh)
- {
- Iterator iterator = offers.iterator();
- do
- {
- if(!iterator.hasNext())
- break;
- agg offer = (agg)iterator.next();
- if(offer.h()) // Locked offer
- offer.a(Z.nextInt(6) + Z.nextInt(6) + 2); // Increase max
- } while(true);
- generateTrade();
- doRefresh = false;
- if(village != null && currentPlayerName != null)
- {
- o.a(this, (byte)14);
- village.a(currentPlayerName, 1); // 1 rep to player who traded
- }
- }
- c(new rf(re.l.H, 200, 0));
- }
- }
- super.bo();
- }
- public boolean a(yr yr1)
- {
- acw acw1 = yr1.bm.j();
- boolean flag = acw1 != null && acw1.b() == acx.bx;
- if(!flag && W() && !trading() && !f())
- {
- if(!o.C)
- {
- a_(yr1);
- yr1.a(this);
- }
- return true;
- } else
- {
- return super.a(yr1);
- }
- }
- protected void c()
- {
- super.c();
- af.a(16, Integer.valueOf(0));
- }
- public void b(dv dv1)
- {
- super.b(dv1);
- dv1.a("Profession", getProfession());
- dv1.a("Riches", riches);
- dv1.a("Career", career);
- dv1.a("CareerLevel", careerLevel);
- dv1.a("Willing", willing);
- if(offers != null)
- dv1.a("Offers", offers.a());
- }
- public void a(dv dv1)
- {
- super.a(dv1);
- setProfession(dv1.f("Profession"));
- riches = dv1.f("Riches");
- career = dv1.f("Career");
- careerLevel = dv1.f("CareerLevel");
- willing = dv1.n("Willing");
- if(dv1.b("Offers", 10))
- {
- dv dv2 = dv1.m("Offers");
- offers = new agh(dv2);
- }
- }
- protected boolean v()
- {
- return false;
- }
- protected String t()
- {
- if(trading())
- return "mob.villager.haggle";
- else
- return "mob.villager.idle";
- }
- protected String aS()
- {
- return "mob.villager.hit";
- }
- protected String aT()
- {
- return "mob.villager.death";
- }
- public void setProfession(int l)
- {
- af.b(16, Integer.valueOf(l));
- }
- public int getProfession()
- {
- return af.c(16);
- }
- public boolean ca()
- {
- return bt;
- }
- public void i(boolean flag)
- {
- bt = flag;
- }
- public void j(boolean flag)
- {
- bu = flag;
- }
- public boolean cb()
- {
- return bu;
- }
- public void b(se se1)
- {
- super.b(se1);
- if(village != null && se1 != null)
- {
- village.a(se1);
- if(se1 instanceof yr)
- {
- byte byte0 = -1;
- if(f())
- byte0 = -3;
- village.a(se1.b_(), byte0);
- if(W())
- o.a(this, (byte)13);
- }
- }
- }
- public void a(qx qx1)
- {
- if(village != null)
- {
- rj rj1 = qx1.j();
- if(rj1 != null)
- {
- if(rj1 instanceof yr)
- village.a(rj1.b_(), -2);
- else
- if(rj1 instanceof xm)
- village.h();
- } else
- if(rj1 == null)
- {
- yr yr1 = o.a(this, 16D);
- if(yr1 != null)
- village.h();
- }
- }
- super.a(qx1);
- }
- public void a_(yr yr1)
- {
- currentPlayer = yr1;
- }
- public yr n_()
- {
- return currentPlayer;
- }
- public boolean trading()
- {
- return currentPlayer != null;
- }
- public boolean cd()
- {
- return willing;
- }
- public void k(boolean flag)
- {
- willing = flag;
- }
- public void a(agg agg1)
- {
- agg1.g(); // Increment uses
- a_ = -q(); // -80?
- a("mob.villager.yes", be(), bf());
- int xp = 3 + Z.nextInt(4); // 3-6
- if(agg1.e() == 1 || Z.nextInt(5) == 0) // First time offer used, or 1/5 chance
- {
- refreshTick = 40;
- doRefresh = true;
- willing = true;
- if(currentPlayer != null)
- currentPlayerName = currentPlayer.b_();
- else
- currentPlayerName = null;
- xp += 5; // > 8-11
- }
- if(agg1.a().b() == acx.bC) // Emeralds to villager in first slot
- riches += agg1.a().b; // Increment by amount
- o.d(new rz(o, s, t + 0.5D, u, xp)); // Spawn XP at villager
- }
- public void a_(acw acw1)
- {
- if(!o.C && a_ > -q() + 20)
- {
- a_ = -q();
- if(acw1 != null)
- a("mob.villager.yes", be(), bf());
- else
- a("mob.villager.no", be(), bf());
- }
- }
- public agh b(yr yr1)
- {
- if(offers == null)
- generateTrade();
- return offers;
- }
- private void generateTrade()
- {
- ym professionOffers[][][] = offerChart[getProfession()];
- if(career == 0 || careerLevel == 0) // Choose a career
- {
- career = Z.nextInt(professionOffers.length) + 1;
- careerLevel = 1;
- } else
- {
- careerLevel++; // Increment career level
- }
- if(offers == null)
- offers = new agh();
- int careerIdx = career - 1;
- int levelIdx = careerLevel - 1;
- ym careerOffers[][] = professionOffers[careerIdx];
- if(levelIdx < careerOffers.length) // Add all offers for the current career level
- {
- ym levelOffers[] = careerOffers[levelIdx];
- ym lvlOffers[] = levelOffers;
- int j1 = lvlOffers.length;
- for(int k1 = 0; k1 < j1; k1++)
- {
- ym offer = lvlOffers[k1];
- offer.a(offers, Z);
- }
- }
- }
- public void a(agh agh1)
- {
- }
- public fo c_()
- {
- String s1 = bG();
- if(s1 != null && s1.length() > 0)
- return new fv(s1);
- if(offers == null)
- generateTrade();
- String s2 = null;
- switch(getProfession())
- {
- case 0: // '\0'
- if(career == 1)
- s2 = "farmer";
- else
- if(career == 2)
- s2 = "fisherman";
- else
- if(career == 3)
- s2 = "shepherd";
- else
- if(career == 4)
- s2 = "fletcher";
- break;
- case 1: // '\001'
- s2 = "librarian";
- break;
- case 2: // '\002'
- s2 = "cleric";
- break;
- case 3: // '\003'
- if(career == 1)
- s2 = "armor";
- else
- if(career == 2)
- s2 = "weapon";
- else
- if(career == 3)
- s2 = "tool";
- break;
- case 4: // '\004'
- if(career == 1)
- s2 = "butcher";
- else
- if(career == 2)
- s2 = "leather";
- break;
- }
- if(s2 != null)
- {
- fw fw1 = new fw((new StringBuilder()).append("entity.Villager.").append(s2).toString(), new Object[0]);
- fw1.b().a(aB());
- fw1.b().a(ay().toString());
- return fw1;
- } else
- {
- return super.c_();
- }
- }
- public void a(byte byte0)
- {
- if(byte0 == 12)
- b("heart");
- else
- if(byte0 == 13)
- b("angryVillager");
- else
- if(byte0 == 14)
- b("happyVillager");
- else
- super.a(byte0);
- }
- private void b(String s1)
- {
- for(int l = 0; l < 5; l++)
- {
- double d = Z.nextGaussian() * 0.02D;
- double d1 = Z.nextGaussian() * 0.02D;
- double d2 = Z.nextGaussian() * 0.02D;
- o.a(s1, (s + (double)(Z.nextFloat() * M * 2.0F)) - (double)M, t + 1.0D + (double)(Z.nextFloat() * N), (u + (double)(Z.nextFloat() * M * 2.0F)) - (double)M, d, d1, d2);
- }
- }
- public sh a(sh sh)
- {
- sh = super.a(sh);
- setProfession(o.r.nextInt(5));
- return sh;
- }
- public void ce()
- {
- bE = true;
- }
- public ygTranslated b(rg rg1)
- {
- ygTranslated yg1 = new ygTranslated(o);
- yg1.a(((sh) (null)));
- return yg1;
- }
- public boolean bM()
- {
- return false;
- }
- public rg a(rg rg1)
- {
- return b(rg1);
- }
- private int villageAITick;
- private boolean bt;
- private boolean bu;
- vi village;
- private yr currentPlayer;
- private agh offers;
- private int refreshTick;
- private boolean doRefresh;
- private boolean willing;
- private int riches;
- private String currentPlayerName;
- private int career;
- private int careerLevel;
- private boolean bE;
- private static final ym offerChart[][][][];
- static
- {
- offerChart = (new ym[][][][] {
- new ym[][][] {
- new ym[][] {
- new ym[] { // Farmer
- // yh = Items for 1 emerald e.g. 18-22; yl = emerald(s) for item(s); positive #Em, negative #item e.g. 2-4
- new yh(acx.O, new yn(18, 22)), new yh(acx.bG, new yn(15, 19)), new yh(acx.bF, new yn(15, 19)), new yl(acx.P, new yn(-4, -2))
- }, new ym[] {
- new yh(acu.a(ajh.aK), new yn(8, 13)), new yl(acx.bO, new yn(-3, -2))
- }, new ym[] {
- new yh(acu.a(ajh.ba), new yn(7, 12)), new yl(acx.e, new yn(-5, -7))
- }, new ym[] {
- new yl(acx.aX, new yn(-6, -10)), new yl(acx.aU, new yn(1, 1))
- }
- }, new ym[][] { // Fisherman
- new ym[] {
- // yk = Items for Items, costs 1 emerald; yj = emeralds for item w/ lvl 5-19 ench
- new yh(acx.F, new yn(15, 20)), new yh(acx.h, new yn(16, 24)), new yk(acx.aP, new yn(6, 6), acx.aQ, new yn(6, 6))
- }, new ym[] {
- new yj(acx.aM, new yn(7, 8))
- }
- }, new ym[][] { // Shepherd
- new ym[] {
- new yh(acu.a(ajh.L), new yn(14, 22)), new yl(acx.aZ, new yn(3, 4))
- }, new ym[] {
- new yl(new acw(acu.a(ajh.L), 1, 0), new yn(1, 2)), new yl(new acw(acu.a(ajh.L), 1, 1), new yn(1, 2)), new yl(new acw(acu.a(ajh.L), 1, 2), new yn(1, 2)), new yl(new acw(acu.a(ajh.L), 1, 3), new yn(1, 2)), new yl(new acw(acu.a(ajh.L), 1, 4), new yn(1, 2)), new yl(new acw(acu.a(ajh.L), 1, 5), new yn(1, 2)), new yl(new acw(acu.a(ajh.L), 1, 6), new yn(1, 2)), new yl(new acw(acu.a(ajh.L), 1, 7), new yn(1, 2)), new yl(new acw(acu.a(ajh.L), 1, 8), new yn(1, 2)), new yl(new acw(acu.a(ajh.L), 1, 9), new yn(1, 2)),
- new yl(new acw(acu.a(ajh.L), 1, 10), new yn(1, 2)), new yl(new acw(acu.a(ajh.L), 1, 11), new yn(1, 2)), new yl(new acw(acu.a(ajh.L), 1, 12), new yn(1, 2)), new yl(new acw(acu.a(ajh.L), 1, 13), new yn(1, 2)), new yl(new acw(acu.a(ajh.L), 1, 14), new yn(1, 2)), new yl(new acw(acu.a(ajh.L), 1, 15), new yn(1, 2))
- }
- }, new ym[][] { // Fletcher
- new ym[] {
- new yh(acx.F, new yn(15, 20)), new yl(acx.g, new yn(-12, -8))
- }, new ym[] {
- new yl(acx.f, new yn(2, 3)), new yk(acu.a(ajh.n), new yn(10, 10), acx.ak, new yn(6, 10))
- }
- }
- }, new ym[][][] {
- new ym[][] {
- new ym[] { // Librarian
- new yh(acx.aF, new yn(24, 36)), new yi()
- }, new ym[] {
- new yh(acx.aG, new yn(8, 10)), new yl(acx.aL, new yn(10, 12)), new yl(acu.a(ajh.X), new yn(3, 4))
- }, new ym[] {
- new yh(acx.bB, new yn(2, 2)), new yl(acx.aN, new yn(10, 12)), new yl(acu.a(ajh.w), new yn(-5, -3))
- }, new ym[] {
- new yi()
- }, new ym[] {
- new yi()
- }
- }
- // yh buy; yl sell; yk duo; yj ench sell; yi = Enchanted Book w/ any valid enchant/lvl combo, costing 2 + random.nextInt(5 + level * 10) + 3 * level;
- }, new ym[][][] {
- new ym[][] {
- new ym[] { // Cleric
- new yh(acx.bh, new yn(36, 40)), new yh(acx.k, new yn(8, 10))
- }, new ym[] {
- new yh(acx.bi, new yn(3, 4)), new yl(acx.ax, new yn(-4, -1)), new yl(new acw(acx.aR, 1, 4), new yn(-2, -1))
- }, new ym[] {
- new yl(acx.bv, new yn(7, 11)), new yl(acu.a(ajh.aN), new yn(-3, -1))
- }
- }
- }, new ym[][][] {
- new ym[][] {
- new ym[] { // Armor
- new yh(acx.h, new yn(16, 24)), new yl(acx.Y, new yn(4, 6))
- }, new ym[] {
- new yh(acx.j, new yn(7, 9)), new yl(acx.Z, new yn(10, 14))
- }, new ym[] {
- new yh(acx.i, new yn(3, 4)), new yj(acx.ad, new yn(16, 19))
- }, new ym[] {
- new yl(acx.X, new yn(5, 7)), new yl(acx.W, new yn(9, 11)), new yl(acx.U, new yn(5, 7)), new yl(acx.V, new yn(11, 15))
- }
- }, new ym[][] {
- new ym[] { // Weapon
- new yh(acx.h, new yn(16, 24)), new yl(acx.c, new yn(6, 8))
- }, new ym[] {
- new yh(acx.j, new yn(7, 9)), new yj(acx.l, new yn(9, 10))
- }, new ym[] {
- new yh(acx.i, new yn(3, 4)), new yj(acx.u, new yn(12, 15)), new yj(acx.x, new yn(9, 12))
- }
- }, new ym[][] {
- new ym[] { // Tool
- new yh(acx.h, new yn(16, 24)), new yj(acx.a, new yn(5, 7))
- }, new ym[] {
- new yh(acx.j, new yn(7, 9)), new yj(acx.b, new yn(9, 11))
- }, new ym[] {
- new yh(acx.i, new yn(3, 4)), new yj(acx.w, new yn(12, 15))
- }
- }
- // yh buy; yl sell; yk duo; yj ench sell; yi ench book
- }, new ym[][][] {
- new ym[][] {
- new ym[] { // Butcher
- new yh(acx.al, new yn(14, 18)), new yh(acx.bf, new yn(14, 18))
- }, new ym[] {
- new yh(acx.h, new yn(16, 24)), new yl(acx.am, new yn(-7, -5)), new yl(acx.bg, new yn(-8, -6))
- }
- }, new ym[][] {
- new ym[] { // Leather
- new yh(acx.aA, new yn(9, 12)), new yl(acx.S, new yn(2, 4))
- }, new ym[] {
- new yj(acx.R, new yn(7, 12))
- }, new ym[] {
- new yl(acx.av, new yn(8, 10))
- }
- }
- }
- });
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement