From 5728adc9192a58e13a138732239621399de9fad5 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?C=CE=A9?= <3291875824@qq.com>
Date: Fri, 13 Jun 2025 01:11:41 +0800
Subject: [PATCH] =?UTF-8?q?=E8=AE=BE=E7=BD=AEscriptable=E5=AD=98=E5=82=A8?=
=?UTF-8?q?=E8=A7=92=E8=89=B2=E4=BF=A1=E6=81=AF=EF=BC=8C=E8=B0=83=E6=95=B4?=
=?UTF-8?q?=E7=BC=96=E9=98=9F=E7=B3=BB=E7=BB=9F=E9=83=A8=E5=88=86=E4=BB=A3?=
=?UTF-8?q?=E7=A0=81=E9=80=BB=E8=BE=91?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../.idea/encodings.xml | 4 +
...{CharacterImg.meta => 1001001_YUETAO.meta} | 2 +-
.../1001001_YUETAO/1001001_YUETAO.asset | 19 +
.../1001001_YUETAO/1001001_YUETAO.asset.meta | 8 +
.../Character.png} | Bin
.../Character.png.meta} | 0
.../TeamCharacter.png} | Bin
.../TeamCharacter.png.meta} | 0
.../default.png | Bin
.../1001001_YUETAO/default.png.meta | 114 ++
...OccupationIcon.meta => 1001002_AYANO.meta} | 2 +-
.../1001002_AYANO/1001002_AYANO.asset | 19 +
.../1001002_AYANO/1001002_AYANO.asset.meta | 8 +
.../AYANO.png => 1001002_AYANO/Character.png} | Bin
.../Character.png.meta} | 0
.../TeamCharacter.png} | Bin
.../TeamCharacter.png.meta} | 0
.../TeamCharacters/1001002_AYANO/default.png | Bin 0 -> 1622 bytes
.../default.png.meta | 0
.../levelIcon/CharacterLevelData.asset | 18 +
.../levelIcon/CharacterLevelData.asset.meta | 8 +
Assets/Scenes/Songs_Select.unity | 1035 +----------------
Assets/Scenes/selectYourSongFirst.unity | 4 +
...terImg.meta => TeamCharacterDataBase.meta} | 2 +-
.../TeamCharacterDataBase/CharacterList.asset | 17 +
.../CharacterList.asset.meta | 8 +
Assets/TeamCharacterDataBase/script.meta | 8 +
.../script/TeamCharacterDataInfo.cs | 18 +
.../script/TeamCharacterDataInfo.cs.meta | 11 +
.../script/TeamCharacterLevelData.cs | 11 +
.../script/TeamCharacterLevelData.cs.meta | 11 +
.../script/TeamCharacterList.cs | 8 +
.../script/TeamCharacterList.cs.meta | 11 +
.../prefab/chacterCard.prefab | 51 +-
Assets/scripts/Team/Character.cs | 35 -
Assets/scripts/Team/CharacterCardView.cs | 11 +-
Assets/scripts/Team/TeamManager.cs | 61 +-
Assets/scripts/Team/TeamSetting.cs | 35 +
...{Character.cs.meta => TeamSetting.cs.meta} | 0
Assets/scripts/Team/teamCharacterView.cs | 3 +
Assets/scripts/Team/teamSettingPanel.cs | 147 ++-
.../SongDataController/SongButton.cs | 20 +-
42 files changed, 553 insertions(+), 1156 deletions(-)
create mode 100644 .idea/.idea.bansonic_beta_main/.idea/encodings.xml
rename Assets/Resources/TeamCharacters/{CharacterImg.meta => 1001001_YUETAO.meta} (77%)
create mode 100644 Assets/Resources/TeamCharacters/1001001_YUETAO/1001001_YUETAO.asset
create mode 100644 Assets/Resources/TeamCharacters/1001001_YUETAO/1001001_YUETAO.asset.meta
rename Assets/Resources/TeamCharacters/{CharacterImg/YUETAO.png => 1001001_YUETAO/Character.png} (100%)
rename Assets/Resources/TeamCharacters/{CharacterImg/YUETAO.png.meta => 1001001_YUETAO/Character.png.meta} (100%)
rename Assets/Resources/TeamCharacters/{TeamCharacterImg/YUETAO.png => 1001001_YUETAO/TeamCharacter.png} (100%)
rename Assets/Resources/TeamCharacters/{TeamCharacterImg/YUETAO.png.meta => 1001001_YUETAO/TeamCharacter.png.meta} (100%)
rename Assets/Resources/TeamCharacters/{OccupationIcon => 1001001_YUETAO}/default.png (100%)
create mode 100644 Assets/Resources/TeamCharacters/1001001_YUETAO/default.png.meta
rename Assets/Resources/TeamCharacters/{OccupationIcon.meta => 1001002_AYANO.meta} (77%)
create mode 100644 Assets/Resources/TeamCharacters/1001002_AYANO/1001002_AYANO.asset
create mode 100644 Assets/Resources/TeamCharacters/1001002_AYANO/1001002_AYANO.asset.meta
rename Assets/Resources/TeamCharacters/{CharacterImg/AYANO.png => 1001002_AYANO/Character.png} (100%)
rename Assets/Resources/TeamCharacters/{CharacterImg/AYANO.png.meta => 1001002_AYANO/Character.png.meta} (100%)
rename Assets/Resources/TeamCharacters/{TeamCharacterImg/AYANO.png => 1001002_AYANO/TeamCharacter.png} (100%)
rename Assets/Resources/TeamCharacters/{TeamCharacterImg/AYANO.png.meta => 1001002_AYANO/TeamCharacter.png.meta} (100%)
create mode 100644 Assets/Resources/TeamCharacters/1001002_AYANO/default.png
rename Assets/Resources/TeamCharacters/{OccupationIcon => 1001002_AYANO}/default.png.meta (100%)
create mode 100644 Assets/Resources/TeamCharacters/levelIcon/CharacterLevelData.asset
create mode 100644 Assets/Resources/TeamCharacters/levelIcon/CharacterLevelData.asset.meta
rename Assets/{Resources/TeamCharacters/TeamCharacterImg.meta => TeamCharacterDataBase.meta} (77%)
create mode 100644 Assets/TeamCharacterDataBase/CharacterList.asset
create mode 100644 Assets/TeamCharacterDataBase/CharacterList.asset.meta
create mode 100644 Assets/TeamCharacterDataBase/script.meta
create mode 100644 Assets/TeamCharacterDataBase/script/TeamCharacterDataInfo.cs
create mode 100644 Assets/TeamCharacterDataBase/script/TeamCharacterDataInfo.cs.meta
create mode 100644 Assets/TeamCharacterDataBase/script/TeamCharacterLevelData.cs
create mode 100644 Assets/TeamCharacterDataBase/script/TeamCharacterLevelData.cs.meta
create mode 100644 Assets/TeamCharacterDataBase/script/TeamCharacterList.cs
create mode 100644 Assets/TeamCharacterDataBase/script/TeamCharacterList.cs.meta
delete mode 100644 Assets/scripts/Team/Character.cs
create mode 100644 Assets/scripts/Team/TeamSetting.cs
rename Assets/scripts/Team/{Character.cs.meta => TeamSetting.cs.meta} (100%)
diff --git a/.idea/.idea.bansonic_beta_main/.idea/encodings.xml b/.idea/.idea.bansonic_beta_main/.idea/encodings.xml
new file mode 100644
index 00000000..df87cf95
--- /dev/null
+++ b/.idea/.idea.bansonic_beta_main/.idea/encodings.xml
@@ -0,0 +1,4 @@
+
+
+
+
\ No newline at end of file
diff --git a/Assets/Resources/TeamCharacters/CharacterImg.meta b/Assets/Resources/TeamCharacters/1001001_YUETAO.meta
similarity index 77%
rename from Assets/Resources/TeamCharacters/CharacterImg.meta
rename to Assets/Resources/TeamCharacters/1001001_YUETAO.meta
index 270ff24f..fd4918d6 100644
--- a/Assets/Resources/TeamCharacters/CharacterImg.meta
+++ b/Assets/Resources/TeamCharacters/1001001_YUETAO.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 1d4a3fcc2d2f7ec44a2bfa912a0b2904
+guid: d5bd7209fbae23e46924c2911c444eac
folderAsset: yes
DefaultImporter:
externalObjects: {}
diff --git a/Assets/Resources/TeamCharacters/1001001_YUETAO/1001001_YUETAO.asset b/Assets/Resources/TeamCharacters/1001001_YUETAO/1001001_YUETAO.asset
new file mode 100644
index 00000000..e06bfd89
--- /dev/null
+++ b/Assets/Resources/TeamCharacters/1001001_YUETAO/1001001_YUETAO.asset
@@ -0,0 +1,19 @@
+%YAML 1.1
+%TAG !u! tag:unity3d.com,2011:
+--- !u!114 &11400000
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 0}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: 5976726b6b1585d4bae159d4a817b84e, type: 3}
+ m_Name: 1001001_YUETAO
+ m_EditorClassIdentifier:
+ CharacterID: 1001001
+ CharacterSkillName: pure dissidents
+ CharacterCardSprite: {fileID: 21300000, guid: 4cfddbb3f863ce7438489672608b52e7, type: 3}
+ CharacterTeamSprite: {fileID: 21300000, guid: cd700eadb08fd5a4289093677d9414ff, type: 3}
+ CharacterRoleSprite: {fileID: 21300000, guid: 723b47d046dd2e644a87c48049c6cd7b, type: 3}
diff --git a/Assets/Resources/TeamCharacters/1001001_YUETAO/1001001_YUETAO.asset.meta b/Assets/Resources/TeamCharacters/1001001_YUETAO/1001001_YUETAO.asset.meta
new file mode 100644
index 00000000..c1a91448
--- /dev/null
+++ b/Assets/Resources/TeamCharacters/1001001_YUETAO/1001001_YUETAO.asset.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: bc37529925b6b414f801a85c12c80f6d
+NativeFormatImporter:
+ externalObjects: {}
+ mainObjectFileID: 11400000
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Resources/TeamCharacters/CharacterImg/YUETAO.png b/Assets/Resources/TeamCharacters/1001001_YUETAO/Character.png
similarity index 100%
rename from Assets/Resources/TeamCharacters/CharacterImg/YUETAO.png
rename to Assets/Resources/TeamCharacters/1001001_YUETAO/Character.png
diff --git a/Assets/Resources/TeamCharacters/CharacterImg/YUETAO.png.meta b/Assets/Resources/TeamCharacters/1001001_YUETAO/Character.png.meta
similarity index 100%
rename from Assets/Resources/TeamCharacters/CharacterImg/YUETAO.png.meta
rename to Assets/Resources/TeamCharacters/1001001_YUETAO/Character.png.meta
diff --git a/Assets/Resources/TeamCharacters/TeamCharacterImg/YUETAO.png b/Assets/Resources/TeamCharacters/1001001_YUETAO/TeamCharacter.png
similarity index 100%
rename from Assets/Resources/TeamCharacters/TeamCharacterImg/YUETAO.png
rename to Assets/Resources/TeamCharacters/1001001_YUETAO/TeamCharacter.png
diff --git a/Assets/Resources/TeamCharacters/TeamCharacterImg/YUETAO.png.meta b/Assets/Resources/TeamCharacters/1001001_YUETAO/TeamCharacter.png.meta
similarity index 100%
rename from Assets/Resources/TeamCharacters/TeamCharacterImg/YUETAO.png.meta
rename to Assets/Resources/TeamCharacters/1001001_YUETAO/TeamCharacter.png.meta
diff --git a/Assets/Resources/TeamCharacters/OccupationIcon/default.png b/Assets/Resources/TeamCharacters/1001001_YUETAO/default.png
similarity index 100%
rename from Assets/Resources/TeamCharacters/OccupationIcon/default.png
rename to Assets/Resources/TeamCharacters/1001001_YUETAO/default.png
diff --git a/Assets/Resources/TeamCharacters/1001001_YUETAO/default.png.meta b/Assets/Resources/TeamCharacters/1001001_YUETAO/default.png.meta
new file mode 100644
index 00000000..ac50ce69
--- /dev/null
+++ b/Assets/Resources/TeamCharacters/1001001_YUETAO/default.png.meta
@@ -0,0 +1,114 @@
+fileFormatVersion: 2
+guid: 723b47d046dd2e644a87c48049c6cd7b
+TextureImporter:
+ internalIDToNameTable: []
+ externalObjects: {}
+ serializedVersion: 13
+ mipmaps:
+ mipMapMode: 0
+ enableMipMap: 0
+ sRGBTexture: 1
+ linearTexture: 0
+ fadeOut: 0
+ borderMipMap: 0
+ mipMapsPreserveCoverage: 0
+ alphaTestReferenceValue: 0.5
+ mipMapFadeDistanceStart: 1
+ mipMapFadeDistanceEnd: 3
+ bumpmap:
+ convertToNormalMap: 0
+ externalNormalMap: 0
+ heightScale: 0.25
+ normalMapFilter: 0
+ flipGreenChannel: 0
+ isReadable: 0
+ streamingMipmaps: 0
+ streamingMipmapsPriority: 0
+ vTOnly: 0
+ ignoreMipmapLimit: 0
+ grayScaleToAlpha: 0
+ generateCubemap: 6
+ cubemapConvolution: 0
+ seamlessCubemap: 0
+ textureFormat: 1
+ maxTextureSize: 2048
+ textureSettings:
+ serializedVersion: 2
+ filterMode: 1
+ aniso: 1
+ mipBias: 0
+ wrapU: 1
+ wrapV: 1
+ wrapW: 1
+ nPOTScale: 0
+ lightmap: 0
+ compressionQuality: 50
+ spriteMode: 1
+ spriteExtrude: 1
+ spriteMeshType: 1
+ alignment: 0
+ spritePivot: {x: 0.5, y: 0.5}
+ spritePixelsToUnits: 100
+ spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+ spriteGenerateFallbackPhysicsShape: 1
+ alphaUsage: 1
+ alphaIsTransparency: 1
+ spriteTessellationDetail: -1
+ textureType: 8
+ textureShape: 1
+ singleChannelComponent: 0
+ flipbookRows: 1
+ flipbookColumns: 1
+ maxTextureSizeSet: 0
+ compressionQualitySet: 0
+ textureFormatSet: 0
+ ignorePngGamma: 0
+ applyGammaDecoding: 0
+ swizzle: 50462976
+ cookieLightType: 0
+ platformSettings:
+ - serializedVersion: 3
+ buildTarget: DefaultTexturePlatform
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Standalone
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ spriteSheet:
+ serializedVersion: 2
+ sprites: []
+ outline: []
+ physicsShape: []
+ bones: []
+ spriteID: 5e97eb03825dee720800000000000000
+ internalID: 0
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ secondaryTextures: []
+ nameFileIdTable: {}
+ mipmapLimitGroupName:
+ pSDRemoveMatte: 0
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Resources/TeamCharacters/OccupationIcon.meta b/Assets/Resources/TeamCharacters/1001002_AYANO.meta
similarity index 77%
rename from Assets/Resources/TeamCharacters/OccupationIcon.meta
rename to Assets/Resources/TeamCharacters/1001002_AYANO.meta
index be10ad4a..3d8b66e7 100644
--- a/Assets/Resources/TeamCharacters/OccupationIcon.meta
+++ b/Assets/Resources/TeamCharacters/1001002_AYANO.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 95465072ce16290438ddc7e63bbd869d
+guid: 5a0f05813786f074cb3266c66bc83aa2
folderAsset: yes
DefaultImporter:
externalObjects: {}
diff --git a/Assets/Resources/TeamCharacters/1001002_AYANO/1001002_AYANO.asset b/Assets/Resources/TeamCharacters/1001002_AYANO/1001002_AYANO.asset
new file mode 100644
index 00000000..e9db5522
--- /dev/null
+++ b/Assets/Resources/TeamCharacters/1001002_AYANO/1001002_AYANO.asset
@@ -0,0 +1,19 @@
+%YAML 1.1
+%TAG !u! tag:unity3d.com,2011:
+--- !u!114 &11400000
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 0}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: 5976726b6b1585d4bae159d4a817b84e, type: 3}
+ m_Name: 1001002_AYANO
+ m_EditorClassIdentifier:
+ CharacterID: 1001002
+ CharacterSkillName: default skill
+ CharacterCardSprite: {fileID: 21300000, guid: 84ef05cda680d7a40a5108f0a5bcc1c9, type: 3}
+ CharacterTeamSprite: {fileID: 21300000, guid: 63011e948d89eac418c08986d70e15cb, type: 3}
+ CharacterRoleSprite: {fileID: 21300000, guid: d43848ae23ea61941bafe55e1a6fd78f, type: 3}
diff --git a/Assets/Resources/TeamCharacters/1001002_AYANO/1001002_AYANO.asset.meta b/Assets/Resources/TeamCharacters/1001002_AYANO/1001002_AYANO.asset.meta
new file mode 100644
index 00000000..fb516eef
--- /dev/null
+++ b/Assets/Resources/TeamCharacters/1001002_AYANO/1001002_AYANO.asset.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 8e5e7d1ca158e7c498293a6518a09163
+NativeFormatImporter:
+ externalObjects: {}
+ mainObjectFileID: 11400000
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Resources/TeamCharacters/CharacterImg/AYANO.png b/Assets/Resources/TeamCharacters/1001002_AYANO/Character.png
similarity index 100%
rename from Assets/Resources/TeamCharacters/CharacterImg/AYANO.png
rename to Assets/Resources/TeamCharacters/1001002_AYANO/Character.png
diff --git a/Assets/Resources/TeamCharacters/CharacterImg/AYANO.png.meta b/Assets/Resources/TeamCharacters/1001002_AYANO/Character.png.meta
similarity index 100%
rename from Assets/Resources/TeamCharacters/CharacterImg/AYANO.png.meta
rename to Assets/Resources/TeamCharacters/1001002_AYANO/Character.png.meta
diff --git a/Assets/Resources/TeamCharacters/TeamCharacterImg/AYANO.png b/Assets/Resources/TeamCharacters/1001002_AYANO/TeamCharacter.png
similarity index 100%
rename from Assets/Resources/TeamCharacters/TeamCharacterImg/AYANO.png
rename to Assets/Resources/TeamCharacters/1001002_AYANO/TeamCharacter.png
diff --git a/Assets/Resources/TeamCharacters/TeamCharacterImg/AYANO.png.meta b/Assets/Resources/TeamCharacters/1001002_AYANO/TeamCharacter.png.meta
similarity index 100%
rename from Assets/Resources/TeamCharacters/TeamCharacterImg/AYANO.png.meta
rename to Assets/Resources/TeamCharacters/1001002_AYANO/TeamCharacter.png.meta
diff --git a/Assets/Resources/TeamCharacters/1001002_AYANO/default.png b/Assets/Resources/TeamCharacters/1001002_AYANO/default.png
new file mode 100644
index 0000000000000000000000000000000000000000..64eb960245299bd2f866a6140bc63f7e95184a8d
GIT binary patch
literal 1622
zcmV-c2C4apP)@81eN6@0DGz0!}B&LDceh;tjcmxa-gennxZ{{
zuF8e{a1xUsm1QTql7f>rQdvH@5z2DrwXVw3q?%r$NHviuEGvUKOwdj(bX97J1u3i>
zrL4;GA%Ii**L6ac^LV4mioP7kbz{oDHma;d;p_5M8`8&aY$LJCZUdOd4x$UXD$n~+
zS-u_9POP%gvmJ;i(vl(?NBdG|2hT}MG-8#V33Ey@kPe*p!8FtxvC5vV!?FM*#VunS
ziB(o+dMDK~Yr&9xMIlyMlVhV3eiKMXw^HQuC}qi<#BcX)>#8hQO=&{zt1SPlsZFx7
zi+4#!mm61>DEMphW66tCcX@O0^4=FN*X1Nk9g-q#??@q#qR_Y{6?`mMWIqIOq^oj-
zOACDu;3=)LP2byLcg9)^=Fj&5Jl0h?#^v(;TI6+ACW#5Dl-*_k*>w~)+HJ2Kg{3%wM*LBt)GiPwR4dA}@Y{sZu*N!sQ
zV?OSbiBcA;`L7O3Yu93KF`J2IUX-GP<(W?+()Ke)6>Ok~X6fso~6;5{O2U}ev!DA@j+bRjb_!D*-ugW6`bvSktRlNRd;J_hi+%b^))1m6L8wL$h5(#;P@
zC&k()x+;TDBKrF5n7nmPtK8$in|O0y9GN0sTt>LC%5u%pG1zbWGN=icpW-ZQE~z^J
z{!XN*EK?J`?ZfC{-vHI=vy8kKOU860gWxl5JrkdL7r;*dUhFd<;(_Cjnzb>kG_=Rf
z0Ps_X&cNks*(bc*+_uLh1~UM5`i*D1b&!?vm9%A@DlD+-<6xdP8R2ii#+v>%D$GJkchjTN)$E`ddw5OvGv}Mp6!EC9sH_I
z$j4ntaSl_vSVdgUA
zNmnFgfbzb8($WX4wE}
zM&Y$8iVZ2daB}e45X+$YAW3BHgH2d=9bcZ;V(rQ@-)_XZo3QN0uqkENAD{sI4
+/// 该sobj仅适用于编队系统,角色系统的详细信息需要另外设计
+///
+[CreateAssetMenu(fileName = "CharacterDataInfo", menuName = "TeamCharacter/TeamCharacterDataInfo")]
+public class TeamCharacterDataInfo :ScriptableObject
+{
+ ///
+ /// 角色系统请以此id为准来查找数据
+ ///
+ public int CharacterID;
+ public string CharacterSkillName;
+ public Sprite CharacterCardSprite;
+ public Sprite CharacterTeamSprite;
+ public Sprite CharacterRoleSprite;
+}
diff --git a/Assets/TeamCharacterDataBase/script/TeamCharacterDataInfo.cs.meta b/Assets/TeamCharacterDataBase/script/TeamCharacterDataInfo.cs.meta
new file mode 100644
index 00000000..0b6488b1
--- /dev/null
+++ b/Assets/TeamCharacterDataBase/script/TeamCharacterDataInfo.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 5976726b6b1585d4bae159d4a817b84e
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/TeamCharacterDataBase/script/TeamCharacterLevelData.cs b/Assets/TeamCharacterDataBase/script/TeamCharacterLevelData.cs
new file mode 100644
index 00000000..8769036d
--- /dev/null
+++ b/Assets/TeamCharacterDataBase/script/TeamCharacterLevelData.cs
@@ -0,0 +1,11 @@
+using System.Collections;
+using System.Collections.Generic;
+using UnityEngine;
+[CreateAssetMenu(fileName = "CharacterLevelData", menuName = "Character/CharacterLevelData")]
+public class TeamCharacterLevelData : ScriptableObject
+{
+ public Sprite LevelCSprite;
+ public Sprite LevelSSprite;
+ public Sprite LevelASprite;
+ public Sprite LevelBSprite;
+}
diff --git a/Assets/TeamCharacterDataBase/script/TeamCharacterLevelData.cs.meta b/Assets/TeamCharacterDataBase/script/TeamCharacterLevelData.cs.meta
new file mode 100644
index 00000000..6a7ac81e
--- /dev/null
+++ b/Assets/TeamCharacterDataBase/script/TeamCharacterLevelData.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: b6283ed431b50f749a644d480b0bc324
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/TeamCharacterDataBase/script/TeamCharacterList.cs b/Assets/TeamCharacterDataBase/script/TeamCharacterList.cs
new file mode 100644
index 00000000..1bb74ea7
--- /dev/null
+++ b/Assets/TeamCharacterDataBase/script/TeamCharacterList.cs
@@ -0,0 +1,8 @@
+using System.Collections;
+using System.Collections.Generic;
+using UnityEngine;
+[CreateAssetMenu(fileName = "CharacterList", menuName = "TeamCharacter/TeamCharacterList")]
+public class TeamCharacterList : ScriptableObject
+{
+ public List characters=new List();
+}
diff --git a/Assets/TeamCharacterDataBase/script/TeamCharacterList.cs.meta b/Assets/TeamCharacterDataBase/script/TeamCharacterList.cs.meta
new file mode 100644
index 00000000..0b2747bf
--- /dev/null
+++ b/Assets/TeamCharacterDataBase/script/TeamCharacterList.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: eaf4c7edaf0b74e49a85771b8c5b85eb
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/artworks/Songs_Select/team_SettingResource/prefab/chacterCard.prefab b/Assets/artworks/Songs_Select/team_SettingResource/prefab/chacterCard.prefab
index 3fd31b4a..83a4bd6f 100644
--- a/Assets/artworks/Songs_Select/team_SettingResource/prefab/chacterCard.prefab
+++ b/Assets/artworks/Songs_Select/team_SettingResource/prefab/chacterCard.prefab
@@ -65,7 +65,7 @@ MonoBehaviour:
m_OnCullStateChanged:
m_PersistentCalls:
m_Calls: []
- m_Sprite: {fileID: 21300000, guid: 84ef05cda680d7a40a5108f0a5bcc1c9, type: 3}
+ m_Sprite: {fileID: 0}
m_Type: 0
m_PreserveAspect: 0
m_FillCenter: 1
@@ -86,7 +86,6 @@ GameObject:
- component: {fileID: 3228097016014596376}
- component: {fileID: 4065988666777179856}
- component: {fileID: 2921092759260112579}
- - component: {fileID: 2111168341660587780}
m_Layer: 5
m_Name: levelIcon
m_TagString: Untagged
@@ -141,7 +140,7 @@ MonoBehaviour:
m_OnCullStateChanged:
m_PersistentCalls:
m_Calls: []
- m_Sprite: {fileID: 21300000, guid: cc6dc195a4e12f74e93a76d0a812c100, type: 3}
+ m_Sprite: {fileID: 0}
m_Type: 0
m_PreserveAspect: 0
m_FillCenter: 1
@@ -151,50 +150,6 @@ MonoBehaviour:
m_FillOrigin: 0
m_UseSpriteMesh: 0
m_PixelsPerUnitMultiplier: 1
---- !u!114 &2111168341660587780
-MonoBehaviour:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_GameObject: {fileID: 227430959558785920}
- m_Enabled: 1
- m_EditorHideFlags: 0
- m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3}
- m_Name:
- m_EditorClassIdentifier:
- m_Navigation:
- m_Mode: 3
- m_WrapAround: 0
- m_SelectOnUp: {fileID: 0}
- m_SelectOnDown: {fileID: 0}
- m_SelectOnLeft: {fileID: 0}
- m_SelectOnRight: {fileID: 0}
- m_Transition: 1
- m_Colors:
- m_NormalColor: {r: 1, g: 1, b: 1, a: 1}
- m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1}
- m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1}
- m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1}
- m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608}
- m_ColorMultiplier: 1
- m_FadeDuration: 0.1
- m_SpriteState:
- m_HighlightedSprite: {fileID: 0}
- m_PressedSprite: {fileID: 0}
- m_SelectedSprite: {fileID: 0}
- m_DisabledSprite: {fileID: 0}
- m_AnimationTriggers:
- m_NormalTrigger: Normal
- m_HighlightedTrigger: Highlighted
- m_PressedTrigger: Pressed
- m_SelectedTrigger: Selected
- m_DisabledTrigger: Disabled
- m_Interactable: 1
- m_TargetGraphic: {fileID: 2921092759260112579}
- m_OnClick:
- m_PersistentCalls:
- m_Calls: []
--- !u!1 &2949374534111508497
GameObject:
m_ObjectHideFlags: 0
@@ -247,11 +202,11 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: 31ac798fff192ba4b92574fbc38f7d35, type: 3}
m_Name:
m_EditorClassIdentifier:
+ characterID: 0
charactCard: {fileID: 2949374534111508497}
characterImage: {fileID: 1068789348870044308}
levelIcon: {fileID: 2921092759260112579}
occupationIcon: {fileID: 3273503338186152757}
- characterName:
--- !u!1 &3298850994316689979
GameObject:
m_ObjectHideFlags: 0
diff --git a/Assets/scripts/Team/Character.cs b/Assets/scripts/Team/Character.cs
deleted file mode 100644
index d6e7fb08..00000000
--- a/Assets/scripts/Team/Character.cs
+++ /dev/null
@@ -1,35 +0,0 @@
-using System.Collections;
-using System.Collections.Generic;
-using UnityEngine;
-
-public class Character
-{
- ///
- /// 角色名称
- ///
- public string name{get; set;}
- ///
- /// 职业
- ///
- public string occupation{get; set;}
- ///
- /// 突破等级
- ///
- public string boundaryLevel{get; set;}
- ///
- /// 技能名称
- ///
- public string SkillName{get; set;}
- ///
- /// 是否为队长
- ///
- public bool isLeader{get; set;}
-
- public Character(string name, string occupation, string boundaryLevel, string skillName)
- {
- this.name = name;
- this.occupation = occupation;
- this.boundaryLevel = boundaryLevel;
- this.SkillName = skillName;
- }
-}
diff --git a/Assets/scripts/Team/CharacterCardView.cs b/Assets/scripts/Team/CharacterCardView.cs
index 60af0a2f..3d08aff2 100644
--- a/Assets/scripts/Team/CharacterCardView.cs
+++ b/Assets/scripts/Team/CharacterCardView.cs
@@ -5,11 +5,11 @@ using UnityEngine.UI;
public class CharacterCardView : MonoBehaviour
{
+ public int characterID;
public GameObject charactCard;
public Image characterImage;
public Image levelIcon;
public Image occupationIcon;
- public string characterName;
void Start()
{
@@ -17,11 +17,6 @@ public class CharacterCardView : MonoBehaviour
characterImage.sprite = null;
levelIcon.sprite = null;
}
- ///
- /// 根据角色名称获取角色介绍信息
- ///
- void checkCharacterInformation()
- {
- Debug.Log("尝试获取角色介绍:"+characterName);
- }
+
+
}
diff --git a/Assets/scripts/Team/TeamManager.cs b/Assets/scripts/Team/TeamManager.cs
index f6395cf0..264cd76b 100644
--- a/Assets/scripts/Team/TeamManager.cs
+++ b/Assets/scripts/Team/TeamManager.cs
@@ -1,6 +1,7 @@
using System;
using System.Collections;
using System.Collections.Generic;
+using Unity.Collections;
using UnityEngine;
public class TeamManager : MonoBehaviour
@@ -9,13 +10,13 @@ public class TeamManager : MonoBehaviour
public teamSettingPanel teamSettingPanelInstance;
///
- /// 当前玩家存档下的所有编队配置
+ /// 当前玩家存档下的所有编队配置,key为编队索引,value为该编队的角色列表,表内只有角色ID
///
- public Dictionary> currentTeamSettings = new Dictionary>();
+ public Dictionary currentTeamSettings = new Dictionary();
///
/// 玩家存档下已经解锁的角色信息列表
///
- public List SelectableCharacterList = new List();
+ public List SelectableCharacterList = new List();
///
/// 根据此字段来在编队信息页显示已有编队
///
@@ -43,40 +44,44 @@ public class TeamManager : MonoBehaviour
void testTeamSetting()
{
- SelectableCharacterList.Add(new Character("YUETAO","default","C","pure dissidents"));
- SelectableCharacterList.Add(new Character("AYANO","default","B","default skillName"));
- SelectableCharacterList.Add(new Character("YUETAO","default","C","pure dissidents"));
- SelectableCharacterList.Add(new Character("AYANO","default","S","default skillName"));
+ SelectableCharacterList.Add(new CharacterView(1001001,"C"));
+ SelectableCharacterList.Add(new CharacterView(1001002,"S"));
+ SelectableCharacterList.Add(new CharacterView(1001001,"C"));
+ SelectableCharacterList.Add(new CharacterView(1001002,"C"));
//手动向currentTeamSettings和SelectableCharacterList添加测试数据
- currentTeamSettings.Add(0,new List());
- currentTeamSettings[0].Add(new Character("YUETAO","default","C","pure dissidents"));
- currentTeamSettings[0].Add(new Character("AYANO","default","B","default skillName"));
- currentTeamSettings[0].Add(new Character("YUETAO","default","C","pure dissidents"));
- currentTeamSettings[0].Add(new Character("YUETAO","default","C","pure dissidents"));
+ currentTeamSettings.Add(0,new TeamSetting(new List(),1001001));
+ currentTeamSettings[0].teamIdList.Add(new CharacterView(1001001,"C"));
+ currentTeamSettings[0].teamIdList.Add(new CharacterView(1001002,"S"));
+ currentTeamSettings[0].teamIdList.Add(new CharacterView(1001001,"C"));
+ currentTeamSettings[0].teamIdList.Add( new CharacterView(1001002,"C"));
+
+ currentTeamSettings.Add(1,new TeamSetting(new List(),1001002));
+ currentTeamSettings[0].teamIdList.Add(new CharacterView(1001001,"C"));
+ currentTeamSettings[0].teamIdList.Add(new CharacterView(1001002,"B"));
+ currentTeamSettings[0].teamIdList.Add(new CharacterView(1001001,"C"));
+ currentTeamSettings[0].teamIdList.Add( new CharacterView(1001002,"A"));
+ currentTeamSettings[0].teamIdList.Add(new CharacterView(1001002,"A"));
- currentTeamSettings.Add(1,new List());
- currentTeamSettings[1].Add(new Character("YUETAO","default","C","pure dissidents"));
- currentTeamSettings[1].Add(new Character("AYANO","default","B","default skillName"));
- currentTeamSettings[1].Add(new Character("YUETAO","default","C","pure dissidents"));
- currentTeamSettings[1].Add(new Character("YUETAO","default","C","pure dissidents"));
Debug.Log("testTeamSetting ready");
}
-
+ public void openTeamSettingPanel()=> teamSettingPanelInstance.gameObject.SetActive(true);
+ public void closeTeamSettingPanel()=> teamSettingPanelInstance.gameObject.SetActive(false);
+
void Start()
{
- if(teamSettingPanelInstance == null)
- {
- teamSettingPanelInstance = teamSettingPanel.Instance;
- }
+ // if(teamSettingPanelInstance == null)
+ // {
+ // teamSettingPanelInstance = teamSettingPanel.Instance;
+ // }
testTeamSetting();//接入玩家存档后请注释掉此行
}
///
/// 读取玩家存档信息后可直接在此写入编队信息
///
///
- public void setcurrentTeamSettings(Dictionary> playerTeamSettings)
+ public void setcurrentTeamSettings(Dictionary playerTeamSettings)
{
currentTeamSettings = playerTeamSettings;
}
@@ -84,12 +89,12 @@ public class TeamManager : MonoBehaviour
/// 依据选定的队伍预设索引来获得队伍信息
///
///
- public List getCurrentSelectedTeam()
+ public TeamSetting getCurrentSelectedTeam()
{
return currentTeamSettings[currentSelectedTeam];
}
- public void setCurrentSelectedTeam(List newTeamData, int teamIndex)
+ public void setCurrentSelectedTeam(TeamSetting newTeamData, int teamIndex)
{
currentTeamSettings[teamIndex] = newTeamData;
}
@@ -108,11 +113,11 @@ public class TeamManager : MonoBehaviour
///
public void swapTeamElements(int firstIndex, int secondIndex)
{
- List newCurrentTeam = getCurrentSelectedTeam();
- Character temp = newCurrentTeam[firstIndex];
+ List newCurrentTeam = getCurrentSelectedTeam().teamIdList;
+ CharacterView temp = newCurrentTeam[firstIndex];
newCurrentTeam[firstIndex] = newCurrentTeam[secondIndex];
newCurrentTeam[secondIndex] = temp;
- currentTeamSettings[currentSelectedTeam] = newCurrentTeam;
+ currentTeamSettings[currentSelectedTeam].teamIdList = newCurrentTeam;
}
diff --git a/Assets/scripts/Team/TeamSetting.cs b/Assets/scripts/Team/TeamSetting.cs
new file mode 100644
index 00000000..ef2c2d2a
--- /dev/null
+++ b/Assets/scripts/Team/TeamSetting.cs
@@ -0,0 +1,35 @@
+using System.Collections;
+using System.Collections.Generic;
+using UnityEngine;
+///
+/// 适用于编队系统数据层,存储单个队伍的信息
+///
+public class TeamSetting
+{
+ public TeamSetting(List teamList, int leaderId)
+ {
+ this.teamIdList = teamIdList;
+ LeaderId = leaderId;
+ }
+
+
+ public List teamIdList = new List();
+
+ ///
+ /// 队长
+ ///
+ public int LeaderId{get; set;}
+
+}
+
+public class CharacterView
+{
+ public CharacterView(int characterId, string currentBoundaryLevel)
+ {
+ this.characterId = characterId;
+ this.currentBoundaryLevel = currentBoundaryLevel;
+ }
+
+ public int characterId{get; set;}
+ public string currentBoundaryLevel{get; set;}
+}
diff --git a/Assets/scripts/Team/Character.cs.meta b/Assets/scripts/Team/TeamSetting.cs.meta
similarity index 100%
rename from Assets/scripts/Team/Character.cs.meta
rename to Assets/scripts/Team/TeamSetting.cs.meta
diff --git a/Assets/scripts/Team/teamCharacterView.cs b/Assets/scripts/Team/teamCharacterView.cs
index 08b62f82..6a7d1e0e 100644
--- a/Assets/scripts/Team/teamCharacterView.cs
+++ b/Assets/scripts/Team/teamCharacterView.cs
@@ -8,6 +8,7 @@ using UnityEngine.UI;
//适用于编队 列表
public class teamCharacterView : MonoBehaviour
{
+ public int characterID;
public GameObject character;
public GameObject controlButton;
public Image levelIcon;
@@ -24,7 +25,9 @@ public class teamCharacterView : MonoBehaviour
{
character = gameObject;
levelIcon.sprite=null;
+ levelIcon.color = new Color(levelIcon.color.r, levelIcon.color.g, levelIcon.color.b, 0);
charcterImg.sprite=null;
+ charcterImg.color = new Color(charcterImg.color.r, charcterImg.color.g, charcterImg.color.b, 0);
controlButton.SetActive(isSelected);
}
///
diff --git a/Assets/scripts/Team/teamSettingPanel.cs b/Assets/scripts/Team/teamSettingPanel.cs
index 6b622965..98a14823 100644
--- a/Assets/scripts/Team/teamSettingPanel.cs
+++ b/Assets/scripts/Team/teamSettingPanel.cs
@@ -1,7 +1,9 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
+using UnityEngine.UI;
using utils;
+using Transform = UnityEngine.Transform;
public class teamSettingPanel : MonoBehaviour
{
@@ -16,6 +18,16 @@ public class teamSettingPanel : MonoBehaviour
[SerializeField]
public GameObject[] teamElementsObj;
///
+ /// team用角色数据库总表
+ ///
+ [SerializeField]
+ public TeamCharacterList teamCharacterList;
+ ///
+ /// 等级贴图表
+ ///
+ [SerializeField]
+ public TeamCharacterLevelData teamCharacterLevelData;
+ ///
/// 左侧角色选择页组件
///
[SerializeField]
@@ -47,6 +59,9 @@ public class teamSettingPanel : MonoBehaviour
{
teamManager.OnSelectedCharacterChanged += updateTeamCharacterSelectedStatus;
}
+ StartCoroutine(UpdateTeamSettingAfterOneFrame());
+ // updateTeamSettingElements();
+ StartCoroutine(UpdateSelectableCharacterAfterOneFrame());
}
void OnDestroy()
{
@@ -57,27 +72,102 @@ public class teamSettingPanel : MonoBehaviour
}
public void openTeamSettingPanel()
{
- updateTeamSettingElements();
- getSelectableCharacterList();
//根据获取的队伍信息处理ui组件
//可在此补充ui动画信息
+ StartCoroutine(UpdateTeamSettingAfterOneFrame());
+ // updateTeamSettingElements();
+ StartCoroutine(UpdateSelectableCharacterAfterOneFrame());
teamSettingPanelObj.SetActive(true);
+ // getSelectableCharacterList();
+ }
+ private IEnumerator UpdateTeamSettingAfterOneFrame()
+ {
+ yield return null;
+
+ updateTeamSettingElements();
+ foreach (var obj in teamElementsObj)
+ {
+ if (obj != null)
+ {
+ var t = obj.GetComponent();
+ if (t != null && t.charcterImg != null)
+ {
+ LayoutRebuilder.ForceRebuildLayoutImmediate(t.charcterImg.rectTransform);
+ }
+ }
+ }
+ }
+ private IEnumerator UpdateSelectableCharacterAfterOneFrame()
+ {
+ yield return null;
+
+ updateSelectableCharacterViewList();
+ //获取content下的所有子对象,并重新布局
+ // foreach (Transform child in teamCharacterViewContent.transform)
+ // {
+ // if (child != null)
+ // {
+ // var t = child.GetComponent();
+ // if (t != null && t.characterImage != null)
+ // {
+ // LayoutRebuilder.ForceRebuildLayoutImmediate(t.characterImage.rectTransform);
+ // }
+ // }
+ // }
+ RectTransform rt = teamCharacterViewContent.GetComponent();
+ LayoutRebuilder.ForceRebuildLayoutImmediate(rt);
}
public void closeTeamSettingPanel()
{
teamSettingPanelObj.SetActive(false);
- Transform transform;
- for (int i = 0; i < teamCharacterViewContent.transform.childCount; i++)
+ }
+ public TeamCharacterDataInfo getCharacterViewInfo(int characterID)
+ {
+ if (teamCharacterList == null)
{
- transform = teamCharacterViewContent.transform.GetChild(i);
- GameObject.Destroy(transform.gameObject);
+ Debug.LogError("teamCharacterList 缺失");
+ return null;
+ }
+ foreach (TeamCharacterDataInfo tcdi in teamCharacterList.characters)
+ {
+ if(tcdi.CharacterID==characterID)
+ {
+ return tcdi;
+ }
+ }
+ Debug.LogWarning($"未找到{characterID}对应的角色信息");;
+ return null;
+ }
+
+ public Sprite getLevelSprite(string level)
+ {
+ if(level==null)
+ {
+ Debug.LogWarning("level为空,无法获取对应等级贴图");
+ return null;
+ }
+
+ switch (level)
+ {
+ case "S":
+ return teamCharacterLevelData.LevelSSprite;
+ case "A":
+ return teamCharacterLevelData.LevelASprite;
+ case "B":
+ return teamCharacterLevelData.LevelBSprite;
+ case "C":
+ return teamCharacterLevelData.LevelCSprite;
+ default:
+ Debug.LogWarning($"未找到对应等级贴图,当前等级为:{level}");
+ return null;
}
}
public void updateTeamSettingElements()
{
- List currentTeam = teamManager.getCurrentSelectedTeam();
+ TeamSetting currentSelectedTeam = teamManager.getCurrentSelectedTeam();
+ List currentTeam = currentSelectedTeam.teamIdList;
for (int i = 0; i < teamElementsObj.Length && i < currentTeam.Count; i++)
{
if(teamElementsObj[i]!=null && currentTeam[i]!=null)
@@ -85,13 +175,20 @@ public class teamSettingPanel : MonoBehaviour
teamCharacterView t = teamElementsObj[i].GetComponent();
if(t!=null)
{
- Sprite sprite;
- sprite = FileUtils.getImage($"TeamCharacters/TeamCharacterImg/{currentTeam[i].name}");
- t.charcterImg.sprite = sprite;
- sprite = FileUtils.getImage($"TeamCharacters/levelIcon/level{currentTeam[i].boundaryLevel}");
- t.levelIcon.sprite = sprite;
- t.isLeader.SetActive(currentTeam[i].isLeader);
- t.notLeader.SetActive(!currentTeam[i].isLeader);
+ t.characterID= currentTeam[i].characterId;
+ TeamCharacterDataInfo tcdi = getCharacterViewInfo(t.characterID);
+
+ t.charcterImg.sprite = tcdi.CharacterTeamSprite;
+ t.charcterImg.color=new Color(t.charcterImg.color.r,t.charcterImg.color.g,t.charcterImg.color.b,255f);
+
+ t.levelIcon.sprite = getLevelSprite(currentTeam[i].currentBoundaryLevel);
+ t.levelIcon.color=new Color(t.levelIcon.color.r,t.levelIcon.color.g,t.levelIcon.color.b,255f);
+ if(currentSelectedTeam.LeaderId==currentTeam[i].characterId)
+ {
+ t.isLeader.SetActive(true);
+ t.notLeader.SetActive(false);
+ }
+ t.skillName.text = tcdi.CharacterSkillName;
}
}
}
@@ -99,19 +196,25 @@ public class teamSettingPanel : MonoBehaviour
///
/// 获取当前可选入队伍的角色列表,并显示在界面上
///
- public void getSelectableCharacterList()
+ public void updateSelectableCharacterViewList()
{
- List selectAbleCharacters = teamManager.SelectableCharacterList;
- foreach (Character c in selectAbleCharacters)
+ foreach (Transform child in teamCharacterViewContent.transform)
+ {
+ Destroy(child.gameObject);
+ }
+ List selectAbleCharacters = teamManager.SelectableCharacterList;
+ foreach (CharacterView c in selectAbleCharacters) //id and level
{
GameObject characterObj = Instantiate(teamCharacterPrefab, teamCharacterViewContent.transform);
CharacterCardView ccv = characterObj.GetComponent();
- if (ccv != null)
+ TeamCharacterDataInfo tcdi = getCharacterViewInfo(c.characterId);
+ if (ccv != null&& tcdi!=null)
{
- ccv.characterName = c.name;
- ccv.characterImage.sprite = FileUtils.getImage($"TeamCharacters/CharacterImg/{c.name}");
- ccv.levelIcon.sprite = FileUtils.getImage($"TeamCharacters/levelIcon/level{c.boundaryLevel}");
- ccv.occupationIcon.sprite = FileUtils.getImage($"TeamCharacters/OccupationIcon/{c.occupation}");
+ ccv.characterID = tcdi.CharacterID;
+ ccv.characterImage.sprite =tcdi.CharacterCardSprite;
+ ccv.levelIcon.sprite = getLevelSprite(c.currentBoundaryLevel);
+ ccv.occupationIcon.sprite = tcdi.CharacterRoleSprite;
+ Debug.Log($"{ccv.characterID}--{ccv.characterImage.sprite.name}--{ccv.levelIcon.sprite.name}--{ccv.gameObject.name}");
}
}
}
diff --git a/Assets/songsDatabase/SongDataController/SongButton.cs b/Assets/songsDatabase/SongDataController/SongButton.cs
index 58da522b..5e21a092 100644
--- a/Assets/songsDatabase/SongDataController/SongButton.cs
+++ b/Assets/songsDatabase/SongDataController/SongButton.cs
@@ -5,14 +5,14 @@ using UnityEngine.SceneManagement;
public class SongButton : MonoBehaviour
{
- public TextMeshProUGUI songNameText; // ı
- public TextMeshProUGUI highestScoreText; // ߷ı
- public TextMeshProUGUI difficultyIDText; // ѶIDı
+ public TextMeshProUGUI songNameText; // 歌曲名称文本
+ public TextMeshProUGUI highestScoreText; // 个人最高分文本
+ public TextMeshProUGUI difficultyIDText; // 难度ID文本
public TextMeshProUGUI songIDText;
- public Image buttonImage; // ť Image ñͼ
- public int song_songSerialID; // ťӦĸID
+ public Image buttonImage; // 按钮的 Image 组件,用于设置背景图像
+ public int song_songSerialID; // 按钮对应的歌曲ID
- // ðť
+ // 设置按钮的数据
public void Start()
{
@@ -20,7 +20,7 @@ public class SongButton : MonoBehaviour
}
public void SetButtonData(string songName, int highestScore, int difficultyID, Sprite songSprite, int songID)
{
- Debug.Log("SetButtonData , songID : " + songID);
+ Debug.Log("SetButtonData 被调用, songID 参数: " + songID);
songNameText.text = songName;
highestScoreText.text = "PR: " + highestScore.ToString();
difficultyIDText.text = "" + difficultyID.ToString();
@@ -30,10 +30,10 @@ public class SongButton : MonoBehaviour
}
- // ť¼ song_songSerialID ҶӦ SongDataݵ¸
+ // 按钮点击事件:根据 song_songSerialID 查找对应的 SongData,并传递到下个场景
public void OnSongButtonClick()
{
- Debug.Log("ť song_songSerialID: " + song_songSerialID);
+ Debug.Log("点击按钮的 song_songSerialID: " + song_songSerialID);
SongData selectedSong = SongDataLibrary.Instance.GetSongDataByID(song_songSerialID);
if (selectedSong != null)
{
@@ -42,7 +42,7 @@ public class SongButton : MonoBehaviour
}
else
{
- Debug.LogError("δҵӦ SongData, songID: " + song_songSerialID);
+ Debug.LogError("未找到对应的 SongData, songID: " + song_songSerialID);
}
}