avancement inventaire

master
Baptiste BAVEREL 2 years ago
parent 7f96eb4874
commit 0cd03f2377

Binary file not shown.

Binary file not shown.

Binary file not shown.

@ -8,7 +8,7 @@
@for(int i = 0; i<40; i++) @for(int i = 0; i<40; i++)
{ {
<InventoryItem Item="InventoryItems[i]" nbElem="InventoryNbElems[i]" NoDrop="false"/> <InventoryItem Item="InventoryItems[i]" nbElem="InventoryNbElems[i]" Index="i" NoDrop="false"/>
} }
</div> </div>
@ -21,9 +21,10 @@
Data="@Items" Data="@Items"
PageSize="10" PageSize="10"
ShowPager ShowPager
Responsive> Responsive
Filterable>
<DataGridColumn TItem="Item" Field="@nameof(Item.Id)" Caption="Image" Width="5"> <DataGridColumn TItem="Item" Field="@nameof(Item.Id)" Caption="Image" Width="5" Filterable="false">
<DisplayTemplate> <DisplayTemplate>
<ListItem Item="((Item)context)" NoDrop="true"/> <ListItem Item="((Item)context)" NoDrop="true"/>
</DisplayTemplate> </DisplayTemplate>

@ -23,6 +23,11 @@ namespace BlazorApp1.Components
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
}; };
public int CurrentIndex { get; set; } public int CurrenttmpNbElem { get; set; }
public void StateChange()
{
StateHasChanged();
}
} }
} }

@ -7,10 +7,12 @@
@ondragenter="@OnDragEnter" @ondragenter="@OnDragEnter"
@ondragleave="@OnDragLeave"> @ondragleave="@OnDragLeave">
@if (Item != null) @if (Parent.InventoryItems[this.Index] != null)
{ {
var s = "/";
//<img src="data:image/png;base64, @(Item.ImageBase64)" class="img-thumbnail" title="@Item.DisplayName" alt="@Item.DisplayName"/> //<img src="data:image/png;base64, @(Item.ImageBase64)" class="img-thumbnail" title="@Item.DisplayName" alt="@Item.DisplayName"/>
@Item.DisplayName<br/> @Parent.InventoryNbElems[this.Index] @s @Parent.InventoryItems[this.Index].StackSize<br/>
@nbElem @Parent.InventoryItems[this.Index].DisplayName
} }
</div> </div>

@ -22,12 +22,12 @@ namespace BlazorApp1.Components
public void setItem(Item item) public void setItem(Item item)
{ {
this.Item = item; Parent.InventoryItems[this.Index] = item;
} }
public void setNbElement(int nbElement) public void setNbElement(int nbElement)
{ {
this.nbElem = nbElement; Parent.InventoryNbElems[this.Index] = nbElement;
} }
public void changeState() public void changeState()
@ -37,12 +37,12 @@ namespace BlazorApp1.Components
public Item getItem() public Item getItem()
{ {
return Item; return Parent.InventoryItems[this.Index];
} }
public int getNbElement() public int getNbElement()
{ {
return nbElem; return Parent.InventoryNbElems[this.Index];
} }
public String getTypeID() public String getTypeID()
@ -74,23 +74,23 @@ namespace BlazorApp1.Components
return; return;
} }
if (this.Item is not null) if (Parent.InventoryItems[this.Index] is not null)
{ {
if (this.Item.Equals(Parent.CurrentDragItem)) if (Parent.InventoryItems[this.Index].Equals(Parent.CurrentDragItem))
{ {
if (this.nbElem < this.Item.StackSize && Parent.CurrentEllement.getTypeID() == "ListItem") if (Parent.InventoryNbElems[this.Index] < Parent.InventoryItems[this.Index].StackSize && Parent.CurrentEllement.getTypeID() == "ListItem")
{ {
this.nbElem++; Parent.InventoryNbElems[this.Index]++;
} }
else if (this.nbElem + Parent.CurrentEllement.getNbElement() > this.Item.StackSize && Parent.CurrentEllement.getTypeID() == "InventoryItem") else if (Parent.InventoryNbElems[this.Index] + Parent.CurrentEllement.getNbElement() > Parent.InventoryItems[this.Index].StackSize && Parent.CurrentEllement.getTypeID() == "InventoryItem")
{ {
int tmp = this.nbElem + Parent.CurrentEllement.getNbElement(); int tmp = Parent.InventoryNbElems[this.Index] + Parent.CurrentEllement.getNbElement();
this.nbElem = this.Item.StackSize; Parent.InventoryNbElems[this.Index] = Parent.InventoryItems[this.Index].StackSize;
Parent.CurrentEllement.setNbElement(tmp - this.Item.StackSize); Parent.CurrentEllement.setNbElement(tmp - Parent.InventoryItems[this.Index].StackSize);
} }
else if (Parent.CurrentEllement.getTypeID() == "InventoryItem") else if (Parent.CurrentEllement.getTypeID() == "InventoryItem")
{ {
this.nbElem += Parent.CurrentEllement.getNbElement(); Parent.InventoryNbElems[this.Index] += Parent.CurrentEllement.getNbElement();
Parent.CurrentEllement.setNbElement(0); Parent.CurrentEllement.setNbElement(0);
Parent.CurrentEllement.setItem(null); Parent.CurrentEllement.setItem(null);
} }
@ -99,7 +99,7 @@ namespace BlazorApp1.Components
int indice = -1; int indice = -1;
for (int i = 0; i < 40; i++) for (int i = 0; i < 40; i++)
{ {
if (this.Item.Equals(Parent.InventoryItems[i]) && this.nbElem < this.Item.StackSize) { if (Parent.InventoryItems[this.Index].Equals(Parent.InventoryItems[i]) && Parent.InventoryNbElems[i] < Parent.InventoryItems[i].StackSize) {
Parent.InventoryNbElems[i]++; Parent.InventoryNbElems[i]++;
indice = -1; indice = -1;
break; break;
@ -111,7 +111,7 @@ namespace BlazorApp1.Components
} }
if (indice != -1) if (indice != -1)
{ {
Parent.InventoryItems[indice] = this.Item; Parent.InventoryItems[indice] = Parent.InventoryItems[this.Index];
Parent.InventoryNbElems[indice] = 1; Parent.InventoryNbElems[indice] = 1;
} }
} }
@ -120,29 +120,29 @@ namespace BlazorApp1.Components
{ {
if (Parent.CurrentEllement.getTypeID() == "InventoryItem") if (Parent.CurrentEllement.getTypeID() == "InventoryItem")
{ {
int tmp = this.nbElem; int tmp = Parent.InventoryNbElems[this.Index];
this.nbElem = Parent.CurrentEllement.getNbElement(); Parent.InventoryNbElems[this.Index] = Parent.CurrentEllement.getNbElement();
Parent.CurrentEllement.setNbElement(tmp); Parent.CurrentEllement.setNbElement(tmp);
Item tmpI = this.Item; Item tmpI = Parent.InventoryItems[this.Index];
this.Item = Parent.CurrentEllement.getItem(); Parent.InventoryItems[this.Index] = Parent.CurrentEllement.getItem();
Parent.CurrentEllement.setItem(tmpI); Parent.CurrentEllement.setItem(tmpI);
} }
} }
} }
else else
{ {
Item tmp = this.Item; Item tmp = Parent.InventoryItems[this.Index];
int tmpNb = this.nbElem; int tmpNb = Parent.InventoryNbElems[this.Index];
this.Item = Parent.CurrentDragItem; Parent.InventoryItems[this.Index] = Parent.CurrentDragItem;
this.nbElem = Parent.CurrentEllement.getNbElement(); Parent.InventoryNbElems[this.Index] = Parent.CurrentEllement.getNbElement();
if (Parent.CurrentEllement.getTypeID() == "InventoryItem") if (Parent.CurrentEllement.getTypeID() == "InventoryItem")
{ {
InventoryItem invItem = (InventoryItem)Parent.CurrentEllement; InventoryItem invItem = (InventoryItem)Parent.CurrentEllement;
invItem.Item = tmp; Parent.InventoryItems[Parent.CurrentEllement.getIndex()] = tmp;
invItem.nbElem = tmpNb; Parent.InventoryNbElems[Parent.CurrentEllement.getIndex()] = tmpNb;
Parent.CurrentEllement = invItem; Parent.CurrentEllement = invItem;
} }
@ -153,11 +153,12 @@ namespace BlazorApp1.Components
} }
Parent.CurrentEllement.changeState(); Parent.CurrentEllement.changeState();
StateHasChanged(); StateHasChanged();
Parent.StateChange();
} }
private void OnDragStart() private void OnDragStart()
{ {
Parent.CurrentDragItem = this.Item; Parent.CurrentDragItem = Parent.InventoryItems[this.Index];
Parent.CurrentEllement = this; Parent.CurrentEllement = this;
} }

@ -73,7 +73,7 @@ namespace BlazorApp1.Components
public int getIndex() public int getIndex()
{ {
return Index; return -1;
} }
} }
} }

File diff suppressed because one or more lines are too long

@ -185,3 +185,12 @@
2.0 2.0
2.0 2.0
2.0 2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0

Loading…
Cancel
Save