Item Namen sind nicht mehr case sensitive
This commit is contained in:
parent
14f8ab3f4c
commit
f9b6638643
@ -1,11 +1,11 @@
|
|||||||
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Linq;
|
|
||||||
using UnityEngine;
|
using UnityEngine;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Einfaches Inventory Script v1.1
|
* Einfaches Inventory Script v1.1
|
||||||
* Ein Item muss den Tag 'Item' haben um aufgehoben zu werden
|
* Ein Item muss den Tag 'Item' haben um aufgehoben zu werden
|
||||||
* Schlüssel müssen 'Key' im Namen haben
|
* Schlüssel müssen 'key' irgendwo im Namen haben (case insensitive)
|
||||||
* Türen welche mit Schlüssel geöffnet werden sollen brauchen den Tag 'Openable'
|
* Türen welche mit Schlüssel geöffnet werden sollen brauchen den Tag 'Openable'
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@ -35,13 +35,26 @@ public class InventoryBasic : MonoBehaviour
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
case "Openable":
|
case "Openable":
|
||||||
// Entfernt den ersten "Key" welcher unter den Items gefunden wird, falls es einen gibt
|
if (removeFirstOccurence("KEY"))
|
||||||
if ( items.Remove((from item in items where item.name.Contains("Key") select item).First()) )
|
{
|
||||||
{ // falls ein "Key" gefunden wurde, wird dieser genutzt
|
|
||||||
other.gameObject.SetActive(false);
|
other.gameObject.SetActive(false);
|
||||||
Debug.Log("Pickup: Use Key");
|
Debug.Log("Pickup: Use Key");
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool removeFirstOccurence(String seq)
|
||||||
|
{
|
||||||
|
foreach (var x in items)
|
||||||
|
{
|
||||||
|
if (x.name.IndexOf(seq, StringComparison.OrdinalIgnoreCase) > -1)
|
||||||
|
{
|
||||||
|
items.Remove(x);
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return false;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user