mirror of
https://github.com/collinsmith/riiablo.git
synced 2025-07-11 00:08:02 +07:00
Implemented SetItems and UniqueItems priority for item images/sounds, resolves #27
This commit is contained in:
@ -29,7 +29,7 @@ public class SetItems extends Excel<SetItems.Entry> {
|
|||||||
@Column public String invfile;
|
@Column public String invfile;
|
||||||
@Column public String flippyfile;
|
@Column public String flippyfile;
|
||||||
@Column public String dropsound;
|
@Column public String dropsound;
|
||||||
@Column public String dropsfxframe;
|
@Column public int dropsfxframe;
|
||||||
@Column public String usesound;
|
@Column public String usesound;
|
||||||
@Column(format = "cost mult")
|
@Column(format = "cost mult")
|
||||||
public int cost_mult;
|
public int cost_mult;
|
||||||
|
@ -1,7 +1,5 @@
|
|||||||
package com.riiablo.codec.excel;
|
package com.riiablo.codec.excel;
|
||||||
|
|
||||||
import com.riiablo.codec.excel.Excel;
|
|
||||||
|
|
||||||
public class UniqueItems extends Excel<UniqueItems.Entry> {
|
public class UniqueItems extends Excel<UniqueItems.Entry> {
|
||||||
public static class Entry extends Excel.Entry {
|
public static class Entry extends Excel.Entry {
|
||||||
@Override
|
@Override
|
||||||
@ -35,7 +33,7 @@ public class UniqueItems extends Excel<UniqueItems.Entry> {
|
|||||||
@Column public String flippyfile;
|
@Column public String flippyfile;
|
||||||
@Column public String invfile;
|
@Column public String invfile;
|
||||||
@Column public String dropsound;
|
@Column public String dropsound;
|
||||||
@Column public String dropsfxframe;
|
@Column public int dropsfxframe;
|
||||||
@Column public String usesound;
|
@Column public String usesound;
|
||||||
@Column public String prop1;
|
@Column public String prop1;
|
||||||
@Column public int par1;
|
@Column public int par1;
|
||||||
|
@ -569,32 +569,26 @@ public class Item extends Actor implements Disposable {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private String getInvFileName() {
|
private String getInvFileName() {
|
||||||
if (pictureId >= 0) {
|
if (isIdentified()) {
|
||||||
if (isIdentified() && quality == Quality.UNIQUE) {
|
switch (quality) {
|
||||||
if (qualityId == 381) { // Annihilus
|
case SET:
|
||||||
return "invmss";
|
SetItems.Entry setItem = (SetItems.Entry) qualityData;
|
||||||
} else if (qualityId == 400) { // Hellfire Torch
|
if (!setItem.invfile.isEmpty()) return setItem.invfile;
|
||||||
return "invtrch";
|
break;
|
||||||
}
|
case UNIQUE:
|
||||||
|
UniqueItems.Entry uniqueItem = (UniqueItems.Entry) qualityData;
|
||||||
|
if (!uniqueItem.invfile.isEmpty()) return uniqueItem.invfile;
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
// do nothing
|
||||||
}
|
}
|
||||||
return typeEntry.InvGfx[pictureId];
|
|
||||||
}
|
|
||||||
switch (quality) {
|
|
||||||
case SET:
|
|
||||||
return !base.setinvfile.isEmpty()
|
|
||||||
? base.setinvfile
|
|
||||||
: base.invfile;
|
|
||||||
case UNIQUE:
|
|
||||||
return !base.uniqueinvfile.isEmpty()
|
|
||||||
? base.uniqueinvfile
|
|
||||||
: base.invfile;
|
|
||||||
default:
|
|
||||||
return base.invfile;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
return pictureId >= 0 ? typeEntry.InvGfx[pictureId] : base.invfile;
|
||||||
}
|
}
|
||||||
|
|
||||||
public String getInvColor() {
|
public String getInvColor() {
|
||||||
if (base.InvTrans == 0) return null;
|
if (base.InvTrans == 0 || !isIdentified()) return null;
|
||||||
switch (quality) {
|
switch (quality) {
|
||||||
case MAGIC: {
|
case MAGIC: {
|
||||||
MagicAffix affix;
|
MagicAffix affix;
|
||||||
@ -634,7 +628,7 @@ public class Item extends Actor implements Disposable {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public String getCharColor() {
|
public String getCharColor() {
|
||||||
if (base.Transform == 0) return null;
|
if (base.Transform == 0 || !isIdentified()) return null;
|
||||||
switch (quality) {
|
switch (quality) {
|
||||||
case MAGIC: {
|
case MAGIC: {
|
||||||
MagicAffix affix;
|
MagicAffix affix;
|
||||||
@ -674,11 +668,18 @@ public class Item extends Actor implements Disposable {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public String getFlippyFile() {
|
public String getFlippyFile() {
|
||||||
if (isIdentified() && quality == Quality.UNIQUE) {
|
if (isIdentified()) {
|
||||||
if (qualityId == 381) { // Annihilus
|
switch (quality) {
|
||||||
return findBase("mss").flippyfile;
|
case SET:
|
||||||
} else if (qualityId == 400) { // Hellfire Torch
|
SetItems.Entry setItem = (SetItems.Entry) qualityData;
|
||||||
return findBase("tch").flippyfile;
|
if (!setItem.flippyfile.isEmpty()) return setItem.flippyfile;
|
||||||
|
break;
|
||||||
|
case UNIQUE:
|
||||||
|
UniqueItems.Entry uniqueItem = (UniqueItems.Entry) qualityData;
|
||||||
|
if (!uniqueItem.flippyfile.isEmpty()) return uniqueItem.flippyfile;
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
// do nothing
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -686,11 +687,18 @@ public class Item extends Actor implements Disposable {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public int getDropFxFrame() {
|
public int getDropFxFrame() {
|
||||||
if (isIdentified() && quality == Quality.UNIQUE) {
|
if (isIdentified()) {
|
||||||
if (qualityId == 381) { // Annihilus
|
switch (quality) {
|
||||||
return findBase("mss").dropsfxframe;
|
case SET:
|
||||||
} else if (qualityId == 400) { // Hellfire Torch
|
SetItems.Entry setItem = (SetItems.Entry) qualityData;
|
||||||
return findBase("tch").dropsfxframe;
|
if (setItem.dropsfxframe > 0) return setItem.dropsfxframe;
|
||||||
|
break;
|
||||||
|
case UNIQUE:
|
||||||
|
UniqueItems.Entry uniqueItem = (UniqueItems.Entry) qualityData;
|
||||||
|
if (uniqueItem.dropsfxframe > 0) return uniqueItem.dropsfxframe;
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
// do nothing
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -698,11 +706,18 @@ public class Item extends Actor implements Disposable {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public String getDropSound() {
|
public String getDropSound() {
|
||||||
if (isIdentified() && quality == Quality.UNIQUE) {
|
if (isIdentified()) {
|
||||||
if (qualityId == 381) { // Annihilus
|
switch (quality) {
|
||||||
return "item_gem";
|
case SET:
|
||||||
} else if (qualityId == 400) { // Hellfire Torch
|
SetItems.Entry setItem = (SetItems.Entry) qualityData;
|
||||||
return "item_gem";
|
if (!setItem.dropsound.isEmpty()) return setItem.dropsound;
|
||||||
|
break;
|
||||||
|
case UNIQUE:
|
||||||
|
UniqueItems.Entry uniqueItem = (UniqueItems.Entry) qualityData;
|
||||||
|
if (!uniqueItem.dropsound.isEmpty()) return uniqueItem.dropsound;
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
// do nothing
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -710,16 +725,20 @@ public class Item extends Actor implements Disposable {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public String getUseSound() {
|
public String getUseSound() {
|
||||||
/*
|
if (isIdentified()) {
|
||||||
// Neither are usable
|
switch (quality) {
|
||||||
if (isIdentified() && quality == Quality.UNIQUE) {
|
case SET:
|
||||||
if (qualityId == 381) { // Annihilus
|
SetItems.Entry setItem = (SetItems.Entry) qualityData;
|
||||||
return "item_gem";
|
if (!setItem.usesound.isEmpty()) return setItem.usesound;
|
||||||
} else if (qualityId == 400) { // Hellfire Torch
|
break;
|
||||||
return "item_gem";
|
case UNIQUE:
|
||||||
|
UniqueItems.Entry uniqueItem = (UniqueItems.Entry) qualityData;
|
||||||
|
if (!uniqueItem.usesound.isEmpty()) return uniqueItem.usesound;
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
// do nothing
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
*/
|
|
||||||
|
|
||||||
return base.usesound;
|
return base.usesound;
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user