모듈:NPCDispositions

Stardew Valley Wiki
둘러보기로 가기 검색하러 가기

Description

This module gives access to four data items that are stored in the data file NPCDispositions.xnb: gender, rudeness/politeness, birth season, and birth day.

This module can be copy/pasted into all languages without alteration.

Please report any problems or issues with the module on the discussion page for 틀:GiftHeader.


local p = {}

function p.getgender(frame)	

	local npc = frame.args[1]
	
	local female = {"Abigail", "アビゲイル", "애비게일", "Абигейл", "阿比盖尔", "Emily", "エミリー", "에밀리", "Эмили", "艾米丽", "Haley", "ヘイリー", "헤일리", "Хэйли", "海莉", "Leah", "リア", "레아", "Лея", "莉亚", "Maru", "マル", "마루", "Мару", "玛鲁", "Penny", "ペニー", "페니", "Пенни", "潘妮", "Caroline", "キャロライン", "캐롤라인", "Кэролайн", "卡洛琳", "Evelyn", "エブリン", "에블린", "Эвелин", "艾芙琳", "Jas", "ジャス", "재스", "Джас", "贾斯", "Jodi", "ジョディ", "조디", "Джоди", "乔迪", "Marnie", "マーニー", "마니", "Марни", "玛妮", "Pam", "パム", "팸", "Пэм", "潘姆", "Robin", "Robine", "ロビン", "로빈", "Робин", "罗宾", "Sandy", "サンディ", "샌디", "Сэнди", "桑迪"}

	for k, v in pairs(female) do
		if v == npc then return "female" end
	end
	
	local male = {"Alex", "アレックス", "알렉스", "Алекс", "亚历克斯", "Elliott", "エリオット", "엘리엇", "Эллиот", "艾利欧特", "Harvey", "ハーヴィー", "하비", "Харви", "哈维", "Leo", "Léo", "レオ", "레오", "Лео", "雷欧", "Sam", "サム", "샘", "Сэм", "山姆", "Sebastian", "セバスチャン", "세바스찬", "Себастиан", "塞巴斯蒂安", "Shane", "シェーン", "셰인", "Шейн", "谢恩", "Clint", "クリント", "클린트", "Клинт", "克林特", "Demetrius", "ディメトリウス", "드미트리우스", "Деметриус", "德米特里厄斯", "George", "ジョージ", "조지", "Джордж", "乔治", "Gus", "ガス", "거스", "Гас", "格斯", "Kent", "ケント", "켄트", "Кент", "肯特", "Krobus", "クロバス", "크로버스", "Кробус", "科罗布斯", "Lewis", "ルイス", "루이스", "Льюис", "刘易斯", "Linus", "ライナス", "라이너스", "Линус", "莱纳斯", "Pierre", "ピエール", "피에르", "Пьер", "皮埃尔", "Vincent", "ヴィンセント", "빈센트", "Винсент", "文森特", "Willy", "ウィリー", "윌리", "Вилли", "威利", "Wizard", "Zauberer", "Rasmodius", "Sorcier", "Mago", "魔術師", "마법사", "Varázsló", "Feiticeiro", "Волшебник", "Büyücü", "法师"}
	
	for k, v in pairs(male) do
		if v == npc then return "male" end
	end
	return "undefined"
end

function p.getdisposition(frame)
	
	local npc = frame.args[1]
	
	local rude = {"Abigail", "アビゲイル", "애비게일", "Абигейл", "阿比盖尔", "Alex", "アレックス", "알렉스", "Алекс", "亚历克斯", "Clint", "クリント", "클린트", "Клинт", "克林特", "George", "ジョージ", "조지", "Джордж", "乔治", "Haley", "ヘイリー", "헤일리", "Хэйли", "海莉", "Pam", "パム", "팸", "Пэм", "潘姆", "Sebastian", "セバスチャン", "세바스찬", "Себастиан", "塞巴斯蒂安", "Shane", "マーニー", "셰인", "Шейн", "谢恩", "Wizard", "Zauberer", "Rasmodius", "Sorcier", "Mago", "魔術師", "마법사", "Varázsló", "Feiticeiro", "Волшебник", "Büyücü", "法师"}
	
	for k, v in pairs(rude) do
		if v == npc then return "rude" end
	end	
	return "polite"
end

function p.getbirthseason(frame)
	
	local npc = frame.args[1]

	local spring = {"Kent", "ケント", "켄트", "Кент", "肯特", "Lewis", "ルイス", "루이스", "Льюис", "刘易斯", "Vincent", "ヴィンセント", "빈센트", "Винсент", "文森特", "Haley", "ヘイリー", "헤일리", "Хэйли", "海莉", "Pam", "パム", "팸", "Пэм", "潘姆", "Shane", "マーニー", "셰인", "Шейн", "谢恩", "Pierre", "ピエール", "피에르", "Пьер", "皮埃尔", "Emily", "エミリー", "에밀리", "Эмили", "艾米丽"}
	
	for k, v in pairs(spring) do
		if v == npc then return "spring" end
	end

	local summer = {"Leo", "Léo", "レオ", "레오", "Лео", "雷欧", "Jas", "ジャス", "재스", "Джас", "贾斯", "Gus", "ガス", "거스", "Гас", "格斯", "Maru", "マル", "마루", "Мару", "玛鲁", "Alex", "アレックス", "알렉스", "Алекс", "亚历克斯", "Sam", "サム", "샘", "Сэм", "山姆", "Demetrius", "ディメトリウス", "드미트리우스", "Деметриус", "德米特里厄斯", "Dwarf", "Zwerg", "Enano", "Nain", "Nano", "ドワーフ", "드워프", "Törpe", "Anão", "Дварф", "Cüce", "矮人", "Willy", "ウィリー", "윌리", "Вилли", "威利"}
	
	for k, v in pairs(summer) do
		if v == npc then return "summer" end
	end

	local fall = {"Penny", "ペニー", "페니", "Пенни", "潘妮", "Elliott", "エリオット", "엘리엇", "Эллиот", "艾利欧特", "Jodi", "ジョディ", "조디", "Джоди", "乔迪", "Abigail", "アビゲイル", "애비게일", "Абигейл", "阿比盖尔", "Sandy", "サンディ", "샌디", "Сэнди", "桑迪", "Marnie", "マーニー", "마니", "Марни", "玛妮", "Robin", "Robine", "ロビン", "로빈", "Робин", "罗宾", "George", "ジョージ", "조지", "Джордж", "乔治"}
	
	for k, v in pairs(fall) do
		if v == npc then return "fall" end
	end

	local winter = {"Krobus", "クロバス", "크로버스", "Кробус", "科罗布斯", "Linus", "ライナス", "라이너스", "Линус", "莱纳斯", "Caroline", "キャロライン", "캐롤라인", "Кэролайн", "卡洛琳", "Sebastian", "セバスチャン", "세바스찬", "Себастиан", "塞巴斯蒂安", "Harvey", "ハーヴィー", "하비", "Харви", "哈维", "Wizard", "Zauberer", "Rasmodius", "Sorcier", "Mago", "魔術師", "마법사", "Varázsló", "Feiticeiro", "Волшебник", "Büyücü", "法师", "Evelyn", "エブリン", "에블린", "Эвелин", "艾芙琳", "Leah", "リア", "레아", "Лея", "莉亚", "Clint", "クリント", "클린트", "Клинт", "克林特"}
	
	for k, v in pairs(winter) do
		if v == npc then return "winter" end
	end
	return ""
end

function p.getbirthday(frame)

	local npc = frame.args[1]
	
	if (npc == "Krobus" or npc == "クロバス" or npc == "크로버스" or npc == "Кробус" or npc == "科罗布斯") then return "1"
	elseif (npc == "Penny" or npc == "ペニー" or npc == "페니" or npc == "Пенни" or npc == "潘妮") then return "2"
	elseif (npc == "Linus" or npc == "ライナス" or npc == "라이너스" or npc == "Линус" or npc == "莱纳斯") then return "3"
	elseif (npc == "Kent" or npc == "ケント" or npc == "켄트" or npc == "Кент" or npc == "肯特" or npc == "Jas" or npc == "ジャス" or npc == "재스" or npc == "Джас" or npc == "贾斯") then return "4"
	elseif (npc == "Elliott" or npc == "エリオット" or npc == "엘리엇" or npc == "Эллиот" or npc == "艾利欧特") then return "5"
	elseif (npc == "Lewis" or npc == "ルイス" or npc == "루이스" or npc == "Льюис" or npc == "刘易斯" or npc == "Caroline" or npc == "キャロライン" or npc == "캐롤라인" or npc == "Кэролайн" or npc == "卡洛琳") then return "7"
	elseif (npc == "Gus" or npc == "ガス" or npc == "거스" or npc == "Гас" or npc == "格斯") then return "8"
	elseif (npc == "Vincent" or npc == "ヴィンセント" or npc == "빈센트" or npc == "Винсент" or npc == "文森特" or npc == "Maru" or npc == "マル" or npc == "마루" or npc == "Мару" or npc == "玛鲁" or npc == "Sebastian" or npc == "セバスチャン" or npc == "세바스찬" or npc == "Себастиан" or npc == "塞巴斯蒂安") then return "10"
	elseif (npc == "Jodi" or npc == "ジョディ" or npc == "조디" or npc == "Джоди" or npc == "乔迪") then return "11"
	elseif (npc == "Abigail" or npc == "アビゲイル" or npc == "애비게일" or npc == "Абигейл" or npc == "阿比盖尔" or npc == "Alex" or npc == "アレックス" or npc == "알렉스" or npc == "Алекс" or npc == "亚历克斯") then return "13"
	elseif (npc == "Haley" or npc == "ヘイリー" or npc == "헤일리" or npc == "Хэйли" or npc == "海莉" or npc == "Harvey" or npc == "ハーヴィー" or npc == "하비" or npc == "Харви" or npc == "哈维") then return "14"
	elseif (npc == "Sandy" or npc == "サンディ" or npc == "샌디" or npc == "Сэнди" or npc == "桑迪") then return "15"
	elseif (npc == "Sam" or npc == "サム" or npc == "샘" or npc == "Сэм" or npc == "山姆" or npc == "Wizard" or npc == "Zauberer" or npc == "Rasmodius" or npc == "Sorcier" or npc == "Mago" or npc == "魔術師" or npc == "마법사" or npc == "Varázsló" or npc == "Feiticeiro" or npc == "Волшебник" or npc == "Büyücü" or npc == "法师") then return "17"
	elseif (npc == "Marnie" or npc == "マーニー" or npc == "마니" or npc == "Марни" or npc == "玛妮" or npc == "Pam" or npc == "パム" or npc == "팸" or npc == "Пэм" or npc == "潘姆") then return "18"
	elseif (npc == "Demetrius" or npc == "ディメトリウス" or npc == "드미트리우스" or npc == "Деметриус" or npc == "德米特里厄斯") then return "19"
	elseif (npc == "Evelyn" or npc == "エブリン" or npc == "에블린" or npc == "Эвелин" or npc == "艾芙琳" or npc == "Shane" or npc == "マーニー" or npc == "셰인" or npc == "Шейн" or npc == "谢恩") then return "20"
	elseif (npc == "Robin" or npc == "Robine" or npc == "ロビン" or npc == "로빈" or npc == "Робин" or npc == "罗宾") then return "21"
	elseif (npc == "Dwarf" or npc == "Zwerg" or npc == "Enano" or npc == "Nain" or npc == "Nano" or npc == "ドワーフ" or npc == "드워프" or npc == "Törpe" or npc == "Anão" or npc == "Дварф" or npc == "Cüce" or npc == "矮人") then return "22"
	elseif (npc == "Leah" or npc == "リア" or npc == "레아" or npc == "Лея" or npc == "莉亚") then return "23"
	elseif (npc == "George" or npc == "ジョージ" or npc == "조지" or npc == "Джордж" or npc == "乔治" or npc == "Willy" or npc == "ウィリー" or npc == "윌리" or npc == "Вилли" or npc == "威利") then return "24"
	elseif (npc == "Pierre" or npc == "ピエール" or npc == "피에르" or npc == "Пьер" or npc == "皮埃尔" or npc == "Clint" or npc == "クリント" or npc == "클린트" or npc == "Клинт" or npc == "克林特" or npc == "Leo" or npc == "Léo" or npc == "レオ" or npc == "레오" or npc == "Лео" or npc == "雷欧") then return "26"
	elseif (npc == "Emily" or npc == "エミリー" or npc == "에밀리" or npc == "Эмили" or npc == "艾米丽") then return "27"
	else return ""
	end
end

return p