Basic Ammo kokr - mikrono/tModLoaderWiki_kr_ko GitHub Wiki


이 κ°€μ΄λ“œκ°€ 1.4둜 μ—…λ°μ΄νŠΈλ˜μ—ˆμŠ΅λ‹ˆλ‹€. 이 μœ„ν‚€ νŽ˜μ΄μ§€μ˜ 이전 1.3 버전을 보렀면 μ—¬κΈ°λ₯Ό ν΄λ¦­ν•˜μ„Έμš”.


탄약(Ammo)μ΄λž€ λ¬΄μ—‡μΈκ°€μš”?

탄약은 무기 μ•„μ΄ν…œ, 탄약 μ•„μ΄ν…œ, νˆ¬μ‚¬μ²΄λ₯Ό μ„œλ‘œ μ—°κ²°ν•˜λŠ” μ‹œμŠ€ν…œμž…λ‹ˆλ‹€. κΈ°λ³Έ κ°œλ…μ€ λ‹€μŒκ³Ό κ°™μŠ΅λ‹ˆλ‹€: 무기 μ•„μ΄ν…œμ—λŠ” Item.useAmmoκ°€ AmmoID둜 μ„€μ •λ˜μ–΄ 있고, 무기가 μ‚¬μš©ν•΄μ•Ό ν•˜λŠ” 탄약 μ•„μ΄ν…œμ—λŠ” Item.ammoκ°€ λ™μΌν•œ AmmoID둜 μ„€μ •λ˜μ–΄ 있으며, ν•΄λ‹Ή 탄약 μ•„μ΄ν…œμ—λŠ” 탄약 μ‚¬μš© μ‹œ 무기가 λ°œμ‚¬ν•  νŠΉμ • νˆ¬μ‚¬μ²΄μ— λŒ€ν•œ Item.shootκ°€ μ„€μ •λ˜μ–΄ μžˆμŠ΅λ‹ˆλ‹€.

예λ₯Ό λ“€μ–΄ Wooden Bowκ³Ό Flaming Arrowλ₯Ό μ‚΄νŽ΄λ΄…μ‹œλ‹€. Wooden Bowμ—λŠ” Item.useAmmo = AmmoID.Arrow;κ°€ 있고, Flaming Arrowμ—λŠ” Item.shoot = ProjectileID.FireArrow; 및 Item.ammo = AmmoID.Arrow;κ°€ μžˆμŠ΅λ‹ˆλ‹€. ν”Œλ ˆμ΄μ–΄κ°€ Wooden Bow을 쏘면 ν…ŒλΌλ¦¬μ•„λŠ” ν”Œλ ˆμ΄μ–΄μ˜ μΈλ²€ν† λ¦¬μ—μ„œ Wooden Bow의 Item.useAmmo와 μΌμΉ˜ν•˜λŠ” Item.ammoκ°€ μžˆλŠ” μ•„μ΄ν…œμ„ κ²€μƒ‰ν•©λ‹ˆλ‹€. 탄약 μ•„μ΄ν…œμ΄ 발견되면 탄약 μ•„μ΄ν…œμ˜ Item.shoot λ°œμ‚¬μ²΄κ°€ μƒμ„±λ˜κ³  탄약이 μ†Œλͺ¨λ©λ‹ˆλ‹€.

일반적으둜 AmmoIDλŠ” 첫 번째 탄약 μ•„μ΄ν…œμ˜ ItemID와 μΌμΉ˜ν•©λ‹ˆλ‹€. 예λ₯Ό λ“€μ–΄, AmmoID.Arrow와 ItemID.WoodenArrowλŠ” λͺ¨λ‘ 40μž…λ‹ˆλ‹€. λ‹€λ₯Έ λͺ¨λ“  ν™”μ‚΄ν‘œμ—λŠ” Item.ammo = AmmoID.Arrow;κ°€ μžˆμŠ΅λ‹ˆλ‹€.

무기에 바닐라 탄약을 μ‚¬μš©ν•˜λ €λ©΄ μ–΄λ–»κ²Œ ν•΄μ•Ό ν•˜λ‚˜μš”?

바닐라 탄약을 μ‚¬μš©ν•˜λ €λ©΄ Item.useAmmoλ₯Ό μ˜¬λ°”λ₯Έ AmmoID둜 μ„€μ •ν•˜λ©΄ λ©λ‹ˆλ‹€. 예λ₯Ό λ“€μ–΄, ExampleMod의 Example Gunμ—λŠ” Item.useAmmo = AmmoID.Bullet;κ°€ μžˆμŠ΅λ‹ˆλ‹€.

바닐라 탄약은 μ–΄λ–»κ²Œ λ§Œλ“€ 수 μžˆλ‚˜μš”?

바닐라 탄약뢄λ₯˜(Ammo class)에 μ†ν•˜λŠ” 탄약을 λ§Œλ“€λ €λ©΄ Item.ammoλ₯Ό μ˜¬λ°”λ₯Έ AmmoID둜 μ„€μ •ν•˜κΈ°λ§Œ ν•˜λ©΄ λ©λ‹ˆλ‹€. 예λ₯Ό λ“€μ–΄, Example Bullet은 SetDefaults λ©”μ„œλ“œμ— Item.ammo = AmmoID.Bullet;κ°€ μ„€μ •λ˜μ–΄ μžˆμŠ΅λ‹ˆλ‹€. λ˜ν•œ 탄약 μ•„μ΄ν…œμ€ 탄약이 λ°œμ‚¬ν•˜λŠ” νˆ¬μ‚¬μ²΄λ„ μ •μ˜ν•΄μ•Ό ν•©λ‹ˆλ‹€. Example Bullet은 λ‹€μŒκ³Ό κ°™μŠ΅λ‹ˆλ‹€: Item.shoot = ModContent.ProjectileType<Projectiles.ExampleBullet>();

탄약뢄λ₯˜λ₯Ό μƒˆλ‘œ λ§Œλ“€λ €λ©΄ μ–΄λ–»κ²Œ ν•˜λ‚˜μš”?

탄약 μ•„μ΄ν…œ 쀑 ν•˜λ‚˜λ₯Ό AmmoID둜 μ§€μ •ν•˜μ—¬ μƒˆ 탄약뢄λ₯˜λ₯Ό λ§Œλ“€ 수 μžˆμŠ΅λ‹ˆλ‹€. 예λ₯Ό λ“€μ–΄, Example Modμ—μ„œλŠ” μƒˆλ‘œμš΄ 탄약뢄λ₯˜ "ExampleCustomAmmo"λ₯Ό λ³΄μ—¬μ€λ‹ˆλ‹€. ExampleCustomAmmo μ•„μ΄ν…œμ—λŠ” 탄약뢄λ₯˜μ˜ AmmoID둜 μ§€μ •ν•˜κΈ° μœ„ν•΄ Item.ammo = Item.type;이 μžˆμŠ΅λ‹ˆλ‹€. ExampleCustomAmmoGunμ—λŠ” 바닐라 탄약 μ•„μ΄ν…œμ— μ„€μ •ν•œ νŒ¨ν„΄κ³Ό μΌμΉ˜ν•˜λ„λ‘ Item.useAmmo = ModContent.ItemType<ExampleCustomAmmo>();κ°€ μžˆμŠ΅λ‹ˆλ‹€. μΆ”κ°€ νƒ„μ•½μ—λŠ” Item.ammo = ModContent.ItemType<ExampleCustomAmmo>()κ°€, ν•΄λ‹Ή 탄약을 μ‚¬μš©ν•˜λŠ” λ‹€λ₯Έ λ¬΄κΈ°μ—λŠ” Item.useAmmo = ModContent.ItemType<ExampleCustomAmmo>()κ°€ μžˆμŠ΅λ‹ˆλ‹€.

바닐라 μ•„μ΄ν…œμœΌλ‘œ μƒˆλ‘œμš΄ 탄약뢄λ₯˜λ₯Ό λ§Œλ“€λ €λ©΄ μ–΄λ–»κ²Œ ν•΄μ•Ό ν•˜λ‚˜μš”?

GlobalItem 클래슀λ₯Ό μ‚¬μš©ν•˜μ—¬ Item.ammo 및 Item.shoot을 λ§Œλ“  μƒˆ νˆ¬μ‚¬μ²΄λ‘œ μ„€μ •ν•©λ‹ˆλ‹€.

public class AmmoModificationsGlobalItem : GlobalItem
{
	public override void SetDefaults(Item item)
	{
		// 이 item은 "item"이라고 이름뢙은 λ§€κ°œλ³€μˆ˜μ΄κΈ° λ•Œλ¬Έμ— 여기에 "Item" λŒ€μ‹  "item"을 μž…λ ₯ν–ˆμŠ΅λ‹ˆλ‹€.
		if (item.type == ItemID.Rope)
		{
			item.ammo = ItemID.Rope;
			item.shoot = ModContent.ProjectileType<RopeShot>();
		}
		if (item.type == ItemID.VineRope)
		{
			item.ammo = ItemID.Rope;
			item.shoot = ModContent.ProjectileType<VineRopeShot>();
		}
		// 싀크 λ‘œν”„μ™€ μ›Ή λ‘œν”„μ˜ 경우 λ“±...
	}
}

바닐라 μ•„μ΄ν…œμ„ μ‚¬μš©ν•˜μ—¬ μƒˆ μ•„μ΄ν…œμ„ λ§Œλ“€λ©΄ λ‹€λ₯Έ λͺ¨λ“œμ™€ μΆ©λŒν•  μœ„ν—˜μ΄ μžˆμœΌλ―€λ‘œ ν˜Έν™˜μ„±μ„ μœ μ§€ν•˜κ³  ν”Œλ ˆμ΄μ–΄κ°€ ν˜Όλž€μŠ€λŸ¬μ›Œν•˜μ§€ μ•Šλ„λ‘ μ•„κ»΄μ„œ μ‚¬μš©ν•˜μ„Έμš”.

⚠️ **GitHub.com Fallback** ⚠️