mirror of
https://github.com/BlackMATov/unity-iso-tools.git
synced 2025-12-15 01:12:05 +07:00
raw list getter disable
This commit is contained in:
@@ -19,15 +19,15 @@ namespace IsoTools.Internal {
|
|||||||
_comparer = EqualityComparer<T>.Default;
|
_comparer = EqualityComparer<T>.Default;
|
||||||
}
|
}
|
||||||
|
|
||||||
public IsoList<T> RawList {
|
public T this[int index] {
|
||||||
get {
|
get {
|
||||||
return _list;
|
return _list[index];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public Dictionary<T, int> RawDict {
|
public int this[T item] {
|
||||||
get {
|
get {
|
||||||
return _dict;
|
return _dict[item];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -37,6 +37,10 @@ namespace IsoTools.Internal {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public bool Contains(T value) {
|
||||||
|
return _dict.ContainsKey(value);
|
||||||
|
}
|
||||||
|
|
||||||
public void Add(T item) {
|
public void Add(T item) {
|
||||||
if ( !_dict.ContainsKey(item) ) {
|
if ( !_dict.ContainsKey(item) ) {
|
||||||
_dict.Add(item, _list.Count);
|
_dict.Add(item, _list.Count);
|
||||||
|
|||||||
@@ -291,7 +291,7 @@ namespace IsoTools {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public void MarkDirty(IsoObject iso_object) {
|
public void MarkDirty(IsoObject iso_object) {
|
||||||
if ( !iso_object.Internal.Dirty && _visibles.RawDict.ContainsKey(iso_object) ) {
|
if ( !iso_object.Internal.Dirty && _visibles.Contains(iso_object) ) {
|
||||||
iso_object.Internal.Dirty = true;
|
iso_object.Internal.Dirty = true;
|
||||||
MarkDirty();
|
MarkDirty();
|
||||||
}
|
}
|
||||||
@@ -329,8 +329,8 @@ namespace IsoTools {
|
|||||||
}
|
}
|
||||||
|
|
||||||
void FixAllTransforms() {
|
void FixAllTransforms() {
|
||||||
for ( int i = 0, e = _objects.RawList.Count; i < e; ++i ) {
|
for ( int i = 0, e = _objects.Count; i < e; ++i ) {
|
||||||
_objects.RawList[i].FixTransform();
|
_objects[i].FixTransform();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -459,8 +459,8 @@ namespace IsoTools {
|
|||||||
|
|
||||||
void SetupSectorSize() {
|
void SetupSectorSize() {
|
||||||
_sectorsSize = 0.0f;
|
_sectorsSize = 0.0f;
|
||||||
for ( int i = 0, e = _visibles.RawList.Count; i < e; ++i ) {
|
for ( int i = 0, e = _visibles.Count; i < e; ++i ) {
|
||||||
var iso_internal = _visibles.RawList[i].Internal;
|
var iso_internal = _visibles[i].Internal;
|
||||||
_sectorsSize += IsoUtils.Vec2MaxF(iso_internal.ScreenRect.size);
|
_sectorsSize += IsoUtils.Vec2MaxF(iso_internal.ScreenRect.size);
|
||||||
}
|
}
|
||||||
var min_sector_size = IsoToScreen(IsoUtils.vec3OneX).x - IsoToScreen(Vector3.zero).x;
|
var min_sector_size = IsoToScreen(IsoUtils.vec3OneX).x - IsoToScreen(Vector3.zero).x;
|
||||||
@@ -470,8 +470,8 @@ namespace IsoTools {
|
|||||||
void SetupObjectsSectors() {
|
void SetupObjectsSectors() {
|
||||||
_sectorsMinNumPos = new Vector2(float.MaxValue, float.MaxValue);
|
_sectorsMinNumPos = new Vector2(float.MaxValue, float.MaxValue);
|
||||||
_sectorsMaxNumPos = new Vector2(float.MinValue, float.MinValue);
|
_sectorsMaxNumPos = new Vector2(float.MinValue, float.MinValue);
|
||||||
for ( int i = 0, e = _visibles.RawList.Count; i < e; ++i ) {
|
for ( int i = 0, e = _visibles.Count; i < e; ++i ) {
|
||||||
var iso_internal = _visibles.RawList[i].Internal;
|
var iso_internal = _visibles[i].Internal;
|
||||||
|
|
||||||
// high performance tricks
|
// high performance tricks
|
||||||
var min_x = iso_internal.ScreenRect.xMin / _sectorsSize;
|
var min_x = iso_internal.ScreenRect.xMin / _sectorsSize;
|
||||||
@@ -513,8 +513,8 @@ namespace IsoTools {
|
|||||||
}
|
}
|
||||||
|
|
||||||
void TuneSectors() {
|
void TuneSectors() {
|
||||||
for ( int i = 0, e = _visibles.RawList.Count; i < e; ++i ) {
|
for ( int i = 0, e = _visibles.Count; i < e; ++i ) {
|
||||||
var iso_object = _visibles.RawList[i];
|
var iso_object = _visibles[i];
|
||||||
iso_object.Internal.MinSector -= _sectorsMinNumPos;
|
iso_object.Internal.MinSector -= _sectorsMinNumPos;
|
||||||
iso_object.Internal.MaxSector -= _sectorsMinNumPos;
|
iso_object.Internal.MaxSector -= _sectorsMinNumPos;
|
||||||
var min = iso_object.Internal.MinSector;
|
var min = iso_object.Internal.MinSector;
|
||||||
@@ -564,8 +564,8 @@ namespace IsoTools {
|
|||||||
|
|
||||||
void CalculateNewVisibles() {
|
void CalculateNewVisibles() {
|
||||||
_oldVisibles.Clear();
|
_oldVisibles.Clear();
|
||||||
for ( int i = 0, e = _objects.RawList.Count; i < e; ++i ) {
|
for ( int i = 0, e = _objects.Count; i < e; ++i ) {
|
||||||
var iso_object = _objects.RawList[i];
|
var iso_object = _objects[i];
|
||||||
if ( IsIsoObjectVisible(iso_object) ) {
|
if ( IsIsoObjectVisible(iso_object) ) {
|
||||||
iso_object.Internal.Placed = false;
|
iso_object.Internal.Placed = false;
|
||||||
_oldVisibles.Add(iso_object);
|
_oldVisibles.Add(iso_object);
|
||||||
@@ -577,9 +577,9 @@ namespace IsoTools {
|
|||||||
}
|
}
|
||||||
|
|
||||||
void ResolveVisibles() {
|
void ResolveVisibles() {
|
||||||
for ( int i = 0, e = _visibles.RawList.Count; i < e; ++i ) {
|
for ( int i = 0, e = _visibles.Count; i < e; ++i ) {
|
||||||
var iso_object = _visibles.RawList[i];
|
var iso_object = _visibles[i];
|
||||||
if ( iso_object.Internal.Dirty || !_oldVisibles.RawDict.ContainsKey(iso_object) ) {
|
if ( iso_object.Internal.Dirty || !_oldVisibles.Contains(iso_object) ) {
|
||||||
MarkDirty();
|
MarkDirty();
|
||||||
SetupIsoObjectDepends(iso_object);
|
SetupIsoObjectDepends(iso_object);
|
||||||
iso_object.Internal.Dirty = false;
|
iso_object.Internal.Dirty = false;
|
||||||
@@ -588,9 +588,9 @@ namespace IsoTools {
|
|||||||
MarkDirty();
|
MarkDirty();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
for ( int i = 0, e = _oldVisibles.RawList.Count; i < e; ++i ) {
|
for ( int i = 0, e = _oldVisibles.Count; i < e; ++i ) {
|
||||||
var iso_object = _oldVisibles.RawList[i];
|
var iso_object = _oldVisibles[i];
|
||||||
if ( !_visibles.RawDict.ContainsKey(iso_object) ) {
|
if ( !_visibles.Contains(iso_object) ) {
|
||||||
MarkDirty();
|
MarkDirty();
|
||||||
ClearIsoObjectDepends(iso_object);
|
ClearIsoObjectDepends(iso_object);
|
||||||
}
|
}
|
||||||
@@ -598,9 +598,9 @@ namespace IsoTools {
|
|||||||
}
|
}
|
||||||
|
|
||||||
void ClearIsoObjectDepends(IsoObject iso_object) {
|
void ClearIsoObjectDepends(IsoObject iso_object) {
|
||||||
var their_depends_l = iso_object.Internal.TheirDepends.RawList;
|
var their_depends = iso_object.Internal.TheirDepends;
|
||||||
for ( int i = 0, e = their_depends_l.Count; i < e; ++i ) {
|
for ( int i = 0, e = their_depends.Count; i < e; ++i ) {
|
||||||
var their_depend = their_depends_l[i];
|
var their_depend = their_depends[i];
|
||||||
if ( !their_depend.Internal.Dirty ) {
|
if ( !their_depend.Internal.Dirty ) {
|
||||||
their_depend.Internal.SelfDepends.Remove(iso_object);
|
their_depend.Internal.SelfDepends.Remove(iso_object);
|
||||||
}
|
}
|
||||||
@@ -623,8 +623,8 @@ namespace IsoTools {
|
|||||||
|
|
||||||
void PlaceAllVisibles() {
|
void PlaceAllVisibles() {
|
||||||
var depth = startDepth;
|
var depth = startDepth;
|
||||||
for ( int i = 0, e = _visibles.RawList.Count; i < e; ++i ) {
|
for ( int i = 0, e = _visibles.Count; i < e; ++i ) {
|
||||||
depth = RecursivePlaceIsoObject(_visibles.RawList[i], depth);
|
depth = RecursivePlaceIsoObject(_visibles[i], depth);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -633,9 +633,9 @@ namespace IsoTools {
|
|||||||
return depth;
|
return depth;
|
||||||
}
|
}
|
||||||
iso_object.Internal.Placed = true;
|
iso_object.Internal.Placed = true;
|
||||||
var self_depends_l = iso_object.Internal.SelfDepends.RawList;
|
var self_depends = iso_object.Internal.SelfDepends;
|
||||||
for ( int i = 0, e = self_depends_l.Count; i < e; ++i ) {
|
for ( int i = 0, e = self_depends.Count; i < e; ++i ) {
|
||||||
depth = RecursivePlaceIsoObject(self_depends_l[i], depth);
|
depth = RecursivePlaceIsoObject(self_depends[i], depth);
|
||||||
}
|
}
|
||||||
if ( iso_object.mode == IsoObject.Mode.Mode3d ) {
|
if ( iso_object.mode == IsoObject.Mode.Mode3d ) {
|
||||||
var zoffset = iso_object.Internal.Offset3d;
|
var zoffset = iso_object.Internal.Offset3d;
|
||||||
|
|||||||
Reference in New Issue
Block a user