mirror of
https://github.com/Melledy/Nebula.git
synced 2025-12-13 12:54:36 +01:00
Implement character/disc selectors
This commit is contained in:
@@ -618,7 +618,7 @@ public class Inventory extends PlayerManager implements GameDatabaseObject {
|
|||||||
return change.setSuccess(true);
|
return change.setSuccess(true);
|
||||||
}
|
}
|
||||||
|
|
||||||
public PlayerChangeInfo useItem(int id, int count, PlayerChangeInfo change) {
|
public PlayerChangeInfo useItem(int id, int count, int selectId, PlayerChangeInfo change) {
|
||||||
// Player change info
|
// Player change info
|
||||||
if (change == null) {
|
if (change == null) {
|
||||||
change = new PlayerChangeInfo();
|
change = new PlayerChangeInfo();
|
||||||
@@ -643,6 +643,21 @@ public class Inventory extends PlayerManager implements GameDatabaseObject {
|
|||||||
case 2 -> {
|
case 2 -> {
|
||||||
// Add items
|
// Add items
|
||||||
this.addItems(data.getUseParams(), change);
|
this.addItems(data.getUseParams(), change);
|
||||||
|
|
||||||
|
// Success
|
||||||
|
success = true;
|
||||||
|
}
|
||||||
|
case 3 -> {
|
||||||
|
// Selected item
|
||||||
|
int selectCount = data.getUseParams().get(selectId);
|
||||||
|
|
||||||
|
if (selectCount <= 0) {
|
||||||
|
return change;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Add selected item
|
||||||
|
this.addItem(selectId, selectCount, change);
|
||||||
|
|
||||||
// Success
|
// Success
|
||||||
success = true;
|
success = true;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -25,7 +25,12 @@ public class HandlerItemUseReq extends NetHandler {
|
|||||||
|
|
||||||
// Use item
|
// Use item
|
||||||
for (var param : req.getUse().getList()) {
|
for (var param : req.getUse().getList()) {
|
||||||
session.getPlayer().getInventory().useItem(param.getTid(), param.getQty(), change);
|
session.getPlayer().getInventory().useItem(param.getTid(), param.getQty(), 0, change);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Pick item
|
||||||
|
for (var param : req.getPick().getList()) {
|
||||||
|
session.getPlayer().getInventory().useItem(param.getTid(), param.getQty(), param.getSelectTid(), change);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Encode and send
|
// Encode and send
|
||||||
|
|||||||
Reference in New Issue
Block a user