Compare commits
15 commits
Author | SHA1 | Date | |
---|---|---|---|
7d9f58650a | |||
352271d34d | |||
666bbc4659 | |||
30e04df022 | |||
b727b537ef | |||
3cb2ed503f | |||
9fe284c18e | |||
6c2381d65c | |||
45b919a41e | |||
d1fa5a6bc7 | |||
ab820ccf7e | |||
269ab6486b | |||
ca7603458c | |||
63563bc2e9 | |||
c8fc9f08ef |
29 changed files with 9848 additions and 442 deletions
1
.gitattributes
vendored
1
.gitattributes
vendored
|
@ -1 +0,0 @@
|
|||
* whitespace=space-before-tab,-space-after-tab,blank-at-eol,-blank-at-eof
|
4
.gitignore
vendored
4
.gitignore
vendored
|
@ -1,7 +1,7 @@
|
|||
.idea/
|
||||
.DS_Store
|
||||
|
||||
downloader/.env
|
||||
downloader/node_modules
|
||||
.support/.env
|
||||
.support/node_modules
|
||||
|
||||
lib
|
|
@ -13,6 +13,11 @@ const normalizeTranslation = (translation: string | null | undefined) => {
|
|||
return translation.replace(/\n/g, '\\n').replace(/"/g, "'");
|
||||
};
|
||||
|
||||
function getSplitByIndexes(input: string, indexes: number[]): string[] {
|
||||
const parts = input.split('_');
|
||||
return indexes.map((index) => parts[index]).filter((item) => item !== undefined);
|
||||
}
|
||||
|
||||
const prepareLuaWithFemaleVersion = (quest: Quest, type: keyof Quest, key: string) => {
|
||||
let text = '';
|
||||
const value = quest[type] as string;
|
||||
|
@ -70,6 +75,16 @@ const splitFirst = (text: string, delimiter: string) => {
|
|||
return text.slice(index + delimiter.length);
|
||||
};
|
||||
|
||||
const generateRoleTactic = (role: (string | null)[]) => {
|
||||
let luaQuestRecord = '';
|
||||
for (const ability of role) {
|
||||
if (ability == null) continue;
|
||||
const information = ability.split('\n');
|
||||
luaQuestRecord += `\t\t{"${information[0].trim()}","${information[1].trim()}","${information[2].trim()}","${information[3].trim()}"},\n`;
|
||||
}
|
||||
return luaQuestRecord;
|
||||
};
|
||||
|
||||
(async () => {
|
||||
const args = process.argv.slice(2);
|
||||
const addonDir = path.join(process.cwd(), `../Addon/Data/${args[0]}`);
|
||||
|
@ -92,7 +107,15 @@ const splitFirst = (text: string, delimiter: string) => {
|
|||
|
||||
// for each page from tolgee
|
||||
for (const tolgeeKey of translations) {
|
||||
addonData[tolgeeKey.keyName] = {
|
||||
let key = tolgeeKey.keyName;
|
||||
|
||||
if (tolgeeKey.keyNamespace === 'tactic') {
|
||||
key = key.split('_')[0];
|
||||
}
|
||||
|
||||
const instanceName = getSplitByIndexes(tolgeeKey.keyName, [1, 2]).join('_');
|
||||
|
||||
addonData[key] = {
|
||||
...addonData[tolgeeKey.keyName],
|
||||
...(tolgeeKey.keyNamespace === 'name' && {
|
||||
names: [
|
||||
|
@ -144,6 +167,25 @@ const splitFirst = (text: string, delimiter: string) => {
|
|||
tolgeeKey.translations.en.text,
|
||||
],
|
||||
}),
|
||||
...(tolgeeKey.keyNamespace === 'tactic' && {
|
||||
tactics: {
|
||||
[instanceName]: {
|
||||
...(addonData[key]?.tactics?.[instanceName] ?? {}),
|
||||
...(tolgeeKey.keyName.endsWith('_summary') && {
|
||||
summary: tolgeeKey.translations.cs.text,
|
||||
}),
|
||||
...(tolgeeKey.keyName.includes('_tank_') && {
|
||||
tank: [...(addonData[key].tactics?.[instanceName]?.tank ?? []), tolgeeKey.translations.cs.text],
|
||||
}),
|
||||
...(tolgeeKey.keyName.includes('_healer_') && {
|
||||
healer: [...(addonData[key].tactics?.[instanceName]?.healer ?? []), tolgeeKey.translations.cs.text],
|
||||
}),
|
||||
...(tolgeeKey.keyName.includes('_dps_') && {
|
||||
dps: [...(addonData[key].tactics?.[instanceName]?.dps ?? []), tolgeeKey.translations.cs.text],
|
||||
}),
|
||||
},
|
||||
},
|
||||
}),
|
||||
name: tolgeeKey.keyDescription,
|
||||
id: tolgeeKey.keyName.replace('q', '').replace('i', ''),
|
||||
isQuest: tolgeeKey.keyName.startsWith('q'),
|
||||
|
@ -192,12 +234,35 @@ const splitFirst = (text: string, delimiter: string) => {
|
|||
|
||||
if (czechQuest.speeches) {
|
||||
let luaQuestRecord = '';
|
||||
const key = splitFirst(normalizeTranslation(czechQuest.speeches?.[2]) ?? '', ':').trim();
|
||||
luaQuestRecord += `addon.data.speech["${key}"] = {\n`;
|
||||
const key = splitFirst(normalizeTranslation(czechQuest.speeches?.[2]) ?? '', ': ').trim();
|
||||
const npcNameKey = normalizeTranslation(czechQuest.name).trim();
|
||||
luaQuestRecord += `addon.data.speech["${npcNameKey}_${key}"] = {\n`;
|
||||
luaQuestRecord += '\ttext = "' + normalizeTranslation(czechQuest.speeches?.[0]).trim() + '", \n';
|
||||
luaQuestRecord += `}\n`;
|
||||
fs.appendFileSync(fileName, luaQuestRecord, 'utf8');
|
||||
}
|
||||
|
||||
if (czechQuest.tactics) {
|
||||
let luaQuestRecord = '';
|
||||
const npcNameKey = normalizeTranslation(czechQuest.name).trim();
|
||||
luaQuestRecord += `addon.data.tactic["${npcNameKey}"] = {\n`;
|
||||
for (const [instance, roles] of Object.entries(czechQuest.tactics)) {
|
||||
luaQuestRecord += `\t${instance} = {\n`;
|
||||
luaQuestRecord += `\t\tsummary = "${roles.summary}",\n`;
|
||||
luaQuestRecord += `\t\ttank = {\n`;
|
||||
if (roles.tank) luaQuestRecord += generateRoleTactic(roles.tank);
|
||||
luaQuestRecord += `\t\t},\n`;
|
||||
luaQuestRecord += `\t\theal = {\n`;
|
||||
if (roles.healer) luaQuestRecord += generateRoleTactic(roles.healer);
|
||||
luaQuestRecord += `\t\t},\n`;
|
||||
luaQuestRecord += `\t\tdps = {\n`;
|
||||
if (roles.dps) luaQuestRecord += generateRoleTactic(roles.dps);
|
||||
luaQuestRecord += `\t\t},\n`;
|
||||
luaQuestRecord += `\t},\n`;
|
||||
}
|
||||
luaQuestRecord += `}\n`;
|
||||
fs.appendFileSync(fileName, luaQuestRecord, 'utf8');
|
||||
}
|
||||
}
|
||||
});
|
||||
} catch (e) {
|
||||
|
@ -207,6 +272,17 @@ const splitFirst = (text: string, delimiter: string) => {
|
|||
|
||||
type AddonData = Record<string, Quest>;
|
||||
|
||||
type Tactic = {
|
||||
summary?: string | null;
|
||||
tank?: (string | null)[];
|
||||
healer?: (string | null)[];
|
||||
dps?: (string | null)[];
|
||||
};
|
||||
|
||||
type InstanceTactic = {
|
||||
[key: string]: Tactic;
|
||||
};
|
||||
|
||||
type Quest = {
|
||||
id: string;
|
||||
name: string;
|
||||
|
@ -216,6 +292,7 @@ type Quest = {
|
|||
completions?: (string | null)[];
|
||||
objectives?: (string | null)[];
|
||||
speeches?: (string | null)[];
|
||||
tactics?: InstanceTactic;
|
||||
isQuest: boolean;
|
||||
isQuestItem: boolean;
|
||||
};
|
|
@ -9,7 +9,7 @@
|
|||
"dependencies": {
|
||||
"axios": "^1.7.2",
|
||||
"dotenv": "^16.4.5",
|
||||
"typescript": "5.4.2"
|
||||
"typescript": "5.8.2"
|
||||
},
|
||||
"devDependencies": {
|
||||
"prettier": "3.2.5",
|
135
downloader/pnpm-lock.yaml → .support/pnpm-lock.yaml
generated
135
downloader/pnpm-lock.yaml → .support/pnpm-lock.yaml
generated
|
@ -11,25 +11,19 @@ importers:
|
|||
axios:
|
||||
specifier: ^1.7.2
|
||||
version: 1.7.9
|
||||
diff:
|
||||
specifier: ^7.0.0
|
||||
version: 7.0.0
|
||||
dotenv:
|
||||
specifier: ^16.4.5
|
||||
version: 16.4.7
|
||||
pg:
|
||||
specifier: ^8.13.3
|
||||
version: 8.13.3
|
||||
typescript:
|
||||
specifier: 5.4.2
|
||||
version: 5.4.2
|
||||
specifier: 5.8.2
|
||||
version: 5.8.2
|
||||
devDependencies:
|
||||
prettier:
|
||||
specifier: 3.2.5
|
||||
version: 3.2.5
|
||||
ts-node:
|
||||
specifier: 10.9.2
|
||||
version: 10.9.2(@types/node@22.10.2)(typescript@5.4.2)
|
||||
version: 10.9.2(@types/node@22.10.2)(typescript@5.8.2)
|
||||
|
||||
packages:
|
||||
|
||||
|
@ -95,10 +89,6 @@ packages:
|
|||
resolution: {integrity: sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==}
|
||||
engines: {node: '>=0.3.1'}
|
||||
|
||||
diff@7.0.0:
|
||||
resolution: {integrity: sha512-PJWHUb1RFevKCwaFA9RlG5tCd+FO5iRh9A8HEtkmBH2Li03iJriB6m6JIN4rGz3K3JLawI7/veA1xzRKP6ISBw==}
|
||||
engines: {node: '>=0.3.1'}
|
||||
|
||||
dotenv@16.4.7:
|
||||
resolution: {integrity: sha512-47qPchRCykZC03FhkYAhrvwU4xDBFIj1QPqaarj6mdM/hgUzfPHcpkHJOn3mJAufFeeAxAzeGsr5X0M4k6fLZQ==}
|
||||
engines: {node: '>=12'}
|
||||
|
@ -127,56 +117,6 @@ packages:
|
|||
resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==}
|
||||
engines: {node: '>= 0.6'}
|
||||
|
||||
pg-cloudflare@1.1.1:
|
||||
resolution: {integrity: sha512-xWPagP/4B6BgFO+EKz3JONXv3YDgvkbVrGw2mTo3D6tVDQRh1e7cqVGvyR3BE+eQgAvx1XhW/iEASj4/jCWl3Q==}
|
||||
|
||||
pg-connection-string@2.7.0:
|
||||
resolution: {integrity: sha512-PI2W9mv53rXJQEOb8xNR8lH7Hr+EKa6oJa38zsK0S/ky2er16ios1wLKhZyxzD7jUReiWokc9WK5nxSnC7W1TA==}
|
||||
|
||||
pg-int8@1.0.1:
|
||||
resolution: {integrity: sha512-WCtabS6t3c8SkpDBUlb1kjOs7l66xsGdKpIPZsg4wR+B3+u9UAum2odSsF9tnvxg80h4ZxLWMy4pRjOsFIqQpw==}
|
||||
engines: {node: '>=4.0.0'}
|
||||
|
||||
pg-pool@3.7.1:
|
||||
resolution: {integrity: sha512-xIOsFoh7Vdhojas6q3596mXFsR8nwBQBXX5JiV7p9buEVAGqYL4yFzclON5P9vFrpu1u7Zwl2oriyDa89n0wbw==}
|
||||
peerDependencies:
|
||||
pg: '>=8.0'
|
||||
|
||||
pg-protocol@1.7.1:
|
||||
resolution: {integrity: sha512-gjTHWGYWsEgy9MsY0Gp6ZJxV24IjDqdpTW7Eh0x+WfJLFsm/TJx1MzL6T0D88mBvkpxotCQ6TwW6N+Kko7lhgQ==}
|
||||
|
||||
pg-types@2.2.0:
|
||||
resolution: {integrity: sha512-qTAAlrEsl8s4OiEQY69wDvcMIdQN6wdz5ojQiOy6YRMuynxenON0O5oCpJI6lshc6scgAY8qvJ2On/p+CXY0GA==}
|
||||
engines: {node: '>=4'}
|
||||
|
||||
pg@8.13.3:
|
||||
resolution: {integrity: sha512-P6tPt9jXbL9HVu/SSRERNYaYG++MjnscnegFh9pPHihfoBSujsrka0hyuymMzeJKFWrcG8wvCKy8rCe8e5nDUQ==}
|
||||
engines: {node: '>= 8.0.0'}
|
||||
peerDependencies:
|
||||
pg-native: '>=3.0.1'
|
||||
peerDependenciesMeta:
|
||||
pg-native:
|
||||
optional: true
|
||||
|
||||
pgpass@1.0.5:
|
||||
resolution: {integrity: sha512-FdW9r/jQZhSeohs1Z3sI1yxFQNFvMcnmfuj4WBMUTxOrAyLMaTcE1aAMBiTlbMNaXvBCQuVi0R7hd8udDSP7ug==}
|
||||
|
||||
postgres-array@2.0.0:
|
||||
resolution: {integrity: sha512-VpZrUqU5A69eQyW2c5CA1jtLecCsN2U/bD6VilrFDWq5+5UIEVO7nazS3TEcHf1zuPYO/sqGvUvW62g86RXZuA==}
|
||||
engines: {node: '>=4'}
|
||||
|
||||
postgres-bytea@1.0.0:
|
||||
resolution: {integrity: sha512-xy3pmLuQqRBZBXDULy7KbaitYqLcmxigw14Q5sj8QBVLqEwXfeybIKVWiqAXTlcvdvb0+xkOtDbfQMOf4lST1w==}
|
||||
engines: {node: '>=0.10.0'}
|
||||
|
||||
postgres-date@1.0.7:
|
||||
resolution: {integrity: sha512-suDmjLVQg78nMK2UZ454hAG+OAW+HQPZ6n++TNDUX+L0+uUlLywnoxJKDou51Zm+zTCjrCl0Nq6J9C5hP9vK/Q==}
|
||||
engines: {node: '>=0.10.0'}
|
||||
|
||||
postgres-interval@1.2.0:
|
||||
resolution: {integrity: sha512-9ZhXKM/rw350N1ovuWHbGxnGh/SNJ4cnxHiM0rxE4VN41wsg8P8zWn9hv/buK00RP4WvlOyr/RBDiptyxVbkZQ==}
|
||||
engines: {node: '>=0.10.0'}
|
||||
|
||||
prettier@3.2.5:
|
||||
resolution: {integrity: sha512-3/GWa9aOC0YeD7LUfvOG2NiDyhOWRvt1k+rcKhOuYnMY24iiCphgneUfJDyFXd6rZCAnuLBv6UeAULtrhT/F4A==}
|
||||
engines: {node: '>=14'}
|
||||
|
@ -185,10 +125,6 @@ packages:
|
|||
proxy-from-env@1.1.0:
|
||||
resolution: {integrity: sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==}
|
||||
|
||||
split2@4.2.0:
|
||||
resolution: {integrity: sha512-UcjcJOWknrNkF6PLX83qcHM6KHgVKNkV62Y8a5uYDVv9ydGQVwAHMKqHdJje1VTWpljG0WYpCDhrCdAOYH4TWg==}
|
||||
engines: {node: '>= 10.x'}
|
||||
|
||||
ts-node@10.9.2:
|
||||
resolution: {integrity: sha512-f0FFpIdcHgn8zcPSbf1dRevwt047YMnaiJM3u2w2RewrB+fob/zePZcrOyQoLMMO7aBIddLcQIEK5dYjkLnGrQ==}
|
||||
hasBin: true
|
||||
|
@ -203,8 +139,8 @@ packages:
|
|||
'@swc/wasm':
|
||||
optional: true
|
||||
|
||||
typescript@5.4.2:
|
||||
resolution: {integrity: sha512-+2/g0Fds1ERlP6JsakQQDXjZdZMM+rqpamFZJEKh4kwTIn3iDkgKtby0CeNd5ATNZ4Ry1ax15TMx0W2V+miizQ==}
|
||||
typescript@5.8.2:
|
||||
resolution: {integrity: sha512-aJn6wq13/afZp/jT9QZmwEjDqqvSGp1VT5GVg+f/t6/oVyrgXM6BY1h9BRh/O5p3PlUPAe+WuiEZOmb/49RqoQ==}
|
||||
engines: {node: '>=14.17'}
|
||||
hasBin: true
|
||||
|
||||
|
@ -214,10 +150,6 @@ packages:
|
|||
v8-compile-cache-lib@3.0.1:
|
||||
resolution: {integrity: sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==}
|
||||
|
||||
xtend@4.0.2:
|
||||
resolution: {integrity: sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==}
|
||||
engines: {node: '>=0.4'}
|
||||
|
||||
yn@3.1.1:
|
||||
resolution: {integrity: sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==}
|
||||
engines: {node: '>=6'}
|
||||
|
@ -277,8 +209,6 @@ snapshots:
|
|||
|
||||
diff@4.0.2: {}
|
||||
|
||||
diff@7.0.0: {}
|
||||
|
||||
dotenv@16.4.7: {}
|
||||
|
||||
follow-redirects@1.15.9: {}
|
||||
|
@ -297,58 +227,11 @@ snapshots:
|
|||
dependencies:
|
||||
mime-db: 1.52.0
|
||||
|
||||
pg-cloudflare@1.1.1:
|
||||
optional: true
|
||||
|
||||
pg-connection-string@2.7.0: {}
|
||||
|
||||
pg-int8@1.0.1: {}
|
||||
|
||||
pg-pool@3.7.1(pg@8.13.3):
|
||||
dependencies:
|
||||
pg: 8.13.3
|
||||
|
||||
pg-protocol@1.7.1: {}
|
||||
|
||||
pg-types@2.2.0:
|
||||
dependencies:
|
||||
pg-int8: 1.0.1
|
||||
postgres-array: 2.0.0
|
||||
postgres-bytea: 1.0.0
|
||||
postgres-date: 1.0.7
|
||||
postgres-interval: 1.2.0
|
||||
|
||||
pg@8.13.3:
|
||||
dependencies:
|
||||
pg-connection-string: 2.7.0
|
||||
pg-pool: 3.7.1(pg@8.13.3)
|
||||
pg-protocol: 1.7.1
|
||||
pg-types: 2.2.0
|
||||
pgpass: 1.0.5
|
||||
optionalDependencies:
|
||||
pg-cloudflare: 1.1.1
|
||||
|
||||
pgpass@1.0.5:
|
||||
dependencies:
|
||||
split2: 4.2.0
|
||||
|
||||
postgres-array@2.0.0: {}
|
||||
|
||||
postgres-bytea@1.0.0: {}
|
||||
|
||||
postgres-date@1.0.7: {}
|
||||
|
||||
postgres-interval@1.2.0:
|
||||
dependencies:
|
||||
xtend: 4.0.2
|
||||
|
||||
prettier@3.2.5: {}
|
||||
|
||||
proxy-from-env@1.1.0: {}
|
||||
|
||||
split2@4.2.0: {}
|
||||
|
||||
ts-node@10.9.2(@types/node@22.10.2)(typescript@5.4.2):
|
||||
ts-node@10.9.2(@types/node@22.10.2)(typescript@5.8.2):
|
||||
dependencies:
|
||||
'@cspotcode/source-map-support': 0.8.1
|
||||
'@tsconfig/node10': 1.0.11
|
||||
|
@ -362,16 +245,14 @@ snapshots:
|
|||
create-require: 1.1.1
|
||||
diff: 4.0.2
|
||||
make-error: 1.3.6
|
||||
typescript: 5.4.2
|
||||
typescript: 5.8.2
|
||||
v8-compile-cache-lib: 3.0.1
|
||||
yn: 3.1.1
|
||||
|
||||
typescript@5.4.2: {}
|
||||
typescript@5.8.2: {}
|
||||
|
||||
undici-types@6.20.0: {}
|
||||
|
||||
v8-compile-cache-lib@3.0.1: {}
|
||||
|
||||
xtend@4.0.2: {}
|
||||
|
||||
yn@3.1.1: {}
|
30
.support/sync.sh
Normal file
30
.support/sync.sh
Normal file
|
@ -0,0 +1,30 @@
|
|||
#!/bin/bash
|
||||
|
||||
wow_source_folder="retail"
|
||||
wow_destiny_folder="retail"
|
||||
|
||||
# wow_source_folder="beta"
|
||||
# wow_destiny_folder="retail"
|
||||
|
||||
# wow_source_folder="classic_era"
|
||||
# wow_destiny_folder="classic_era"
|
||||
|
||||
src_folder="$(pwd)/./"
|
||||
dest_folder="/Applications/World of Warcraft/_${wow_destiny_folder}_/Interface/AddOns/CzechQuests"
|
||||
|
||||
mkdir -p "$dest_folder/Addon/Data/"
|
||||
|
||||
fswatch -o "$src_folder" | while read -r change; do
|
||||
rsync -auv --delete \
|
||||
"$src_folder/Addon/Data/$wow_source_folder/" \
|
||||
"$dest_folder/Addon/Data/"
|
||||
|
||||
cp "$src_folder/Addon/Data/other.lua" "$dest_folder/Addon/Data/"
|
||||
|
||||
rsync -auv --delete \
|
||||
--exclude '.*' \
|
||||
--exclude 'Addon/Data/**' \
|
||||
--exclude 'lib/**' \
|
||||
--exclude 'Jenkinsfile' \
|
||||
"$src_folder" "$dest_folder"
|
||||
done
|
|
@ -7,6 +7,7 @@
|
|||
"esModuleInterop": true,
|
||||
"skipLibCheck": true,
|
||||
"forceConsistentCasingInFileNames": true,
|
||||
"resolveJsonModule": true
|
||||
},
|
||||
"exclude": ["node_modules"]
|
||||
}
|
|
@ -10,14 +10,18 @@ local function CreateCzechFont(frame, name, size, flags)
|
|||
font:SetTextColor(0, 0, 0, 1)
|
||||
font:SetJustifyH("LEFT")
|
||||
font:SetWidth(frame:GetWidth())
|
||||
font:SetWordWrap(true)
|
||||
font:SetFont(FontPath ..name, size, flags or "")
|
||||
return font
|
||||
end
|
||||
addon.API.CreateCzechFont = CreateCzechFont
|
||||
|
||||
local function UpdateCzechFont(FontString, name, size)
|
||||
local _, _, flags = FontString:GetFont()
|
||||
FontString:SetFont(FontPath .. name, size, flags)
|
||||
if not FontString then
|
||||
return
|
||||
end
|
||||
local _, currentSize, flags = FontString:GetFont()
|
||||
FontString:SetFont(FontPath .. name, size or currentSize, flags)
|
||||
end
|
||||
addon.API.UpdateCzechFont = UpdateCzechFont
|
||||
|
||||
|
|
|
@ -116,6 +116,22 @@ local function InitSpeeches()
|
|||
|
||||
end
|
||||
|
||||
local function InitTactics()
|
||||
local function Update(name, value)
|
||||
CzechQuestsAddon_Store.config[name] = value
|
||||
addon.TacticFrame:UpdateSettings()
|
||||
end
|
||||
|
||||
local layout = Options.layout
|
||||
layout:AddInitializer(CreateSettingsListSectionHeaderInitializer("Taktiky"))
|
||||
|
||||
CreateCheckbox("TACTIC_ENABLED", "Zapnout *", Update)
|
||||
|
||||
CreateDropdown("TACTIC_TEXT_FONT_NAME", "Pismo *", addon.API.GetFontContainer, Update)
|
||||
|
||||
CreateSlider("TACTIC_TEXT_FONT_SIZE", "Velikost pisma *", 10, 30, 1, Update)
|
||||
end
|
||||
|
||||
local function InitOthers()
|
||||
local layout = Options.layout
|
||||
layout:AddInitializer(CreateSettingsListSectionHeaderInitializer("Ostatni"))
|
||||
|
@ -125,12 +141,15 @@ local function InitOthers()
|
|||
end
|
||||
|
||||
local function InitOptions()
|
||||
local category, layout = Settings.RegisterVerticalLayoutCategory("CzechQuests")
|
||||
local category, layout = Settings.RegisterVerticalLayoutCategory("Czech Quests")
|
||||
Options.category = category
|
||||
Options.layout = layout
|
||||
|
||||
InitQuests()
|
||||
InitSpeeches()
|
||||
if (WOW_PROJECT_ID ~= WOW_PROJECT_CLASSIC) then
|
||||
InitTactics()
|
||||
end
|
||||
InitOthers()
|
||||
|
||||
Settings.RegisterAddOnCategory(category)
|
||||
|
|
|
@ -76,7 +76,7 @@ end
|
|||
addon.API.AddSpeechMessage = AddMessage
|
||||
|
||||
local function ShowSpeechTranslation(sender, message)
|
||||
local text = CzechQuestsAddon:GetData("speech", message)
|
||||
local text = CzechQuestsAddon:GetData("speech", sender .. "_" .. message)
|
||||
if text == nil and CzechQuestsAddon_Store.config.SPEECH_ORIGINAL_WHEN_MISSING then
|
||||
text = message
|
||||
end
|
||||
|
|
|
@ -1,5 +1,28 @@
|
|||
local _, addon = ...
|
||||
|
||||
local function BuildIndex(text)
|
||||
local numberMarks = text:gsub("%d+%.?%d*", "#?")
|
||||
local normalized = numberMarks:gsub('"', "'")
|
||||
return normalized
|
||||
end
|
||||
|
||||
local function FillNumbers(text, sourceText)
|
||||
local numbers = {}
|
||||
local currentIndex = 1
|
||||
|
||||
for num in sourceText:gmatch("%d+%.?%d*") do
|
||||
table.insert(numbers, num)
|
||||
end
|
||||
|
||||
local replacedText = text:gsub("#%?", function()
|
||||
local n = numbers[currentIndex]
|
||||
currentIndex = currentIndex + 1
|
||||
return n or "?"
|
||||
end)
|
||||
|
||||
return replacedText
|
||||
end
|
||||
|
||||
local function FillPlaceholders(text)
|
||||
if text == nil then
|
||||
return text
|
||||
|
@ -9,15 +32,18 @@ local function FillPlaceholders(text)
|
|||
|
||||
local formatted = text;
|
||||
formatted = string.gsub(formatted, '<name>', playerName);
|
||||
formatted = string.gsub(formatted, 'Champions', playerName);
|
||||
formatted = string.gsub(formatted, 'champions', playerName);
|
||||
|
||||
return formatted
|
||||
end
|
||||
|
||||
local function GetSpeech(message)
|
||||
local speech = addon.data.speech[message];
|
||||
local index = BuildIndex(message)
|
||||
local speech = addon.data.speech[index];
|
||||
local text = speech and speech.text or nil
|
||||
return FillPlaceholders(text)
|
||||
if text then
|
||||
return FillPlaceholders(FillNumbers(text, message))
|
||||
else
|
||||
return nil
|
||||
end
|
||||
end
|
||||
addon.API.GetSpeech = GetSpeech
|
223
Addon/Code/Tactic.lua
Executable file
223
Addon/Code/Tactic.lua
Executable file
|
@ -0,0 +1,223 @@
|
|||
local _, addon = ...
|
||||
|
||||
local TACTIC_TAB_ID = 9
|
||||
|
||||
local CURRENT_TAB_ID = 0
|
||||
local PREVIOUS_TAB_ID = 0
|
||||
|
||||
local ENCOUNTER_ID = 0
|
||||
local DIFFICULTY = 0
|
||||
|
||||
local function HideOtherContent()
|
||||
local frames = { "overviewScroll", "LootContainer", 'detailsScroll', 'model', 'encounterTitle' }
|
||||
for _, frame in ipairs(frames) do
|
||||
EncounterJournal.encounter.info[frame]:Hide();
|
||||
end
|
||||
|
||||
local tabs = { "overviewTab", "lootTab", "bossTab", "modelTab" }
|
||||
for _, tab in ipairs(tabs) do
|
||||
EncounterJournal.encounter.info[tab].selected:Hide();
|
||||
EncounterJournal.encounter.info[tab].unselected:Show();
|
||||
EncounterJournal.encounter.info[tab]:UnlockHighlight();
|
||||
end
|
||||
|
||||
if EncounterJournal.encounter.info.creatureButtons then
|
||||
for _, button in pairs(EncounterJournal.encounter.info.creatureButtons) do
|
||||
button:Hide()
|
||||
end
|
||||
end
|
||||
|
||||
addon.TacticFrame:ClearHeaders()
|
||||
end
|
||||
|
||||
local function RenderBossTactics(frame, bossName)
|
||||
HideOtherContent()
|
||||
|
||||
local instanceType = 'raidu'
|
||||
local difficulty = 'lfg_raid' -- 17
|
||||
if DIFFICULTY == 14 then
|
||||
difficulty = 'normal_raid'
|
||||
elseif DIFFICULTY == 15 then
|
||||
difficulty = 'heroic_raid'
|
||||
elseif DIFFICULTY == 16 then
|
||||
difficulty = 'mythic_raid'
|
||||
elseif DIFFICULTY == 1 then
|
||||
difficulty = 'normal_dungeon'
|
||||
instanceType = 'dungeonu'
|
||||
elseif DIFFICULTY == 2 then
|
||||
difficulty = 'heroic_dungeon'
|
||||
instanceType = 'dungeonu'
|
||||
elseif DIFFICULTY == 23 then
|
||||
difficulty = 'mythic_dungeon'
|
||||
instanceType = 'dungeonu'
|
||||
elseif DIFFICULTY == 8 then
|
||||
difficulty = 'mythicplus_dungeon'
|
||||
instanceType = 'dungeonu'
|
||||
end
|
||||
|
||||
local bossData = CzechQuestsAddon:GetData('tactic', bossName)
|
||||
local tactic = bossData and bossData[difficulty] or nil
|
||||
|
||||
if not tactic then
|
||||
frame.summary:SetText("Boss " .. bossName .. " nemá pro tuto obtížnost přeloženou taktiku.")
|
||||
frame.inform:Hide()
|
||||
frame:GetParent():Show()
|
||||
return
|
||||
end
|
||||
|
||||
local function CreateHeaderDescription(data)
|
||||
local description = ""
|
||||
for _, item in ipairs(data) do
|
||||
description = description
|
||||
.. "|cff003366" .. item[1] .. "|r\n"
|
||||
.. "" .. item[3] .. " "
|
||||
.. "|cff004400" .. item[4] .. "|r"
|
||||
.. "\n\n"
|
||||
end
|
||||
return description
|
||||
end
|
||||
|
||||
frame.summary:SetText(tactic.summary)
|
||||
frame.inform:SetText("|cffffffffVždy dodržuj pokyny leadera " .. instanceType .. ".|r")
|
||||
|
||||
local tankHeader = frame:CreateHeader()
|
||||
tankHeader.button.title:SetText("Tank")
|
||||
tankHeader.description:SetText(CreateHeaderDescription(tactic.tank))
|
||||
|
||||
local healHeader = frame:CreateHeader()
|
||||
healHeader.button.title:SetText("Healer")
|
||||
healHeader.description:SetText(CreateHeaderDescription(tactic.heal))
|
||||
|
||||
local dpsHeader = frame:CreateHeader()
|
||||
dpsHeader.button.title:SetText("DPS")
|
||||
dpsHeader.description:SetText(CreateHeaderDescription(tactic.dps))
|
||||
|
||||
frame:GetParent():Show()
|
||||
frame:UpdateHeaderPositions()
|
||||
end
|
||||
|
||||
local function CreateCreaturesDropdown()
|
||||
local frame = addon.TacticFrame
|
||||
local encounterName = EJ_GetEncounterInfo(ENCOUNTER_ID)
|
||||
|
||||
local options = {}
|
||||
local selectedValue = nil
|
||||
|
||||
for i = 1, 10 do
|
||||
local id, name = EJ_GetCreatureInfo(i);
|
||||
if id then
|
||||
if addon.data.tactic[name] then
|
||||
table.insert(options, { name, name })
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
if #options > 0 then
|
||||
selectedValue = options[1][2]
|
||||
end
|
||||
|
||||
local function IsSelected(value)
|
||||
return value == selectedValue
|
||||
end
|
||||
|
||||
local function SetSelected(value)
|
||||
if value then
|
||||
RenderBossTactics(addon.TacticFrame, value)
|
||||
end
|
||||
selectedValue = value
|
||||
end
|
||||
|
||||
MenuUtil.CreateRadioMenu(frame.dropdown, IsSelected, SetSelected, unpack(options))
|
||||
|
||||
if #options > 0 then
|
||||
SetSelected(selectedValue)
|
||||
end
|
||||
|
||||
if #options == 0 then
|
||||
frame.summary:SetText("V souboji " .. encounterName .. " není boss, který má přeloženou taktikou.")
|
||||
frame:GetParent():Show()
|
||||
frame.dropdown:Hide()
|
||||
frame.inform:Hide()
|
||||
end
|
||||
end
|
||||
|
||||
local function HideTacticNpcs()
|
||||
addon.TacticFrame:GetParent():Hide()
|
||||
addon.TacticFrame.dropdown:Hide()
|
||||
end
|
||||
|
||||
local function ShowTacticNpcs()
|
||||
CURRENT_TAB_ID = TACTIC_TAB_ID
|
||||
HideOtherContent()
|
||||
|
||||
local frame = addon.TacticFrame
|
||||
|
||||
frame.tab:SetHighlight(true);
|
||||
frame.dropdown:Show()
|
||||
|
||||
EncounterJournal.encounter.info.rightShadow:Show()
|
||||
EncounterJournal.encounter.info.difficulty:Show()
|
||||
|
||||
CreateCreaturesDropdown()
|
||||
end
|
||||
|
||||
local function SetupCustomTab()
|
||||
addon.TacticFrame.tab:SetScript("OnClick", function()
|
||||
ShowTacticNpcs()
|
||||
end)
|
||||
|
||||
hooksecurefunc("EncounterJournal_DisplayEncounter", function(encounterID)
|
||||
ENCOUNTER_ID = encounterID
|
||||
addon.TacticFrame.tab:SetActive(true);
|
||||
|
||||
if CURRENT_TAB_ID == TACTIC_TAB_ID then
|
||||
ShowTacticNpcs()
|
||||
end
|
||||
end)
|
||||
|
||||
hooksecurefunc("EncounterJournal_DisplayInstance", function()
|
||||
addon.TacticFrame.tab:SetActive(false);
|
||||
end)
|
||||
|
||||
hooksecurefunc("EncounterJournal_SetTab", function(tabId)
|
||||
if CURRENT_TAB_ID ~= tabId then
|
||||
addon.TacticFrame.tab:SetHighlight(false);
|
||||
end
|
||||
|
||||
PREVIOUS_TAB_ID = CURRENT_TAB_ID
|
||||
CURRENT_TAB_ID = tabId
|
||||
HideTacticNpcs()
|
||||
end)
|
||||
|
||||
hooksecurefunc("EncounterJournalBossButton_OnClick", function(encounterID)
|
||||
if PREVIOUS_TAB_ID == TACTIC_TAB_ID then
|
||||
ShowTacticNpcs()
|
||||
end
|
||||
end)
|
||||
|
||||
hooksecurefunc("EncounterJournal_UpdateDifficulty", function(difficulty)
|
||||
DIFFICULTY = difficulty
|
||||
if PREVIOUS_TAB_ID == TACTIC_TAB_ID and ENCOUNTER_ID then
|
||||
ShowTacticNpcs()
|
||||
end
|
||||
end)
|
||||
end
|
||||
|
||||
local function InitTactics()
|
||||
local frame = addon.TacticFrame
|
||||
|
||||
-- Register EncounterJournal events
|
||||
frame:RegisterEvent("ADDON_LOADED")
|
||||
|
||||
frame:SetScript("OnEvent", function(self, event, addonName)
|
||||
if not CzechQuestsAddon_Store.config.TACTIC_ENABLED then
|
||||
return
|
||||
end
|
||||
|
||||
if addonName == 'Blizzard_EncounterJournal' then
|
||||
addon.TacticFrame:Init()
|
||||
SetupCustomTab()
|
||||
end
|
||||
end)
|
||||
end
|
||||
addon.API.InitTactics = InitTactics
|
216
Addon/Code/TacticFrame.lua
Executable file
216
Addon/Code/TacticFrame.lua
Executable file
|
@ -0,0 +1,216 @@
|
|||
local _, addon = ...
|
||||
|
||||
local TacticFrame = CreateFrame("Frame", nil)
|
||||
TacticFrame:Hide()
|
||||
|
||||
addon.TacticFrame = TacticFrame
|
||||
TacticFrame.headers = {}
|
||||
|
||||
local NEXT_HEADER_ID = 0
|
||||
|
||||
function TacticFrame:Init()
|
||||
local frame = self
|
||||
|
||||
if not EncounterJournal or not EncounterJournal.encounter or not EncounterJournal.encounter.info then
|
||||
return
|
||||
end
|
||||
|
||||
local scrollFrame = CreateFrame("ScrollFrame", "$parentOverviewScrollFrame", EncounterJournal.encounter.info, "ScrollFrameTemplate")
|
||||
|
||||
scrollFrame:SetSize(330, 370)
|
||||
scrollFrame:SetPoint("TOPLEFT", EncounterJournal.encounter.info.overviewScroll, "TOPLEFT", 0, -7)
|
||||
|
||||
scrollFrame.scrollBarX = -25
|
||||
scrollFrame.scrollBarTopY = -6
|
||||
scrollFrame.scrollBarBottomY = 6
|
||||
|
||||
frame:SetParent(scrollFrame)
|
||||
frame:SetSize(scrollFrame:GetWidth() - 10, 1)
|
||||
frame:Show()
|
||||
|
||||
scrollFrame:SetScrollChild(frame)
|
||||
|
||||
frame.summary = addon.API.CreateCzechFont(
|
||||
frame,
|
||||
CzechQuestsAddon_Store.config.TACTIC_TEXT_FONT_NAME,
|
||||
CzechQuestsAddon_Store.config.TACTIC_TEXT_FONT_SIZE
|
||||
)
|
||||
frame.summary:SetTextColor(0.251, 0.145, 0.012)
|
||||
frame.summary:SetPoint("TOPLEFT", frame, "TOPLEFT", 2, 0)
|
||||
frame.summary:SetWidth(scrollFrame:GetWidth() - 10)
|
||||
|
||||
frame.inform = addon.API.CreateCzechFont(
|
||||
frame,
|
||||
CzechQuestsAddon_Store.config.TACTIC_TEXT_FONT_NAME,
|
||||
CzechQuestsAddon_Store.config.TACTIC_TEXT_FONT_SIZE
|
||||
)
|
||||
frame.inform:SetTextColor(0.251, 0.145, 0.012)
|
||||
frame.inform:SetPoint("BOTTOMLEFT", frame.summary, "BOTTOMLEFT", 2, -20)
|
||||
frame.inform:SetWidth(scrollFrame:GetWidth() - 10)
|
||||
|
||||
local dropdown = CreateFrame("DropdownButton", nil, EncounterJournal.encounter.info, "WowStyle1DropdownTemplate")
|
||||
dropdown:SetPoint("BOTTOMRIGHT", EncounterJournal.encounter.info.encounterTitle, "BOTTOMRIGHT", 2, -2)
|
||||
dropdown:SetWidth(200)
|
||||
dropdown:Hide()
|
||||
frame.dropdown = dropdown
|
||||
|
||||
frame:UpdateSettings()
|
||||
|
||||
frame:InitTab()
|
||||
end
|
||||
|
||||
function TacticFrame:UpdateSettings()
|
||||
local frame = self
|
||||
|
||||
addon.API.UpdateCzechFont(
|
||||
frame.summary,
|
||||
CzechQuestsAddon_Store.config.TACTIC_TEXT_FONT_NAME,
|
||||
CzechQuestsAddon_Store.config.TACTIC_TEXT_FONT_SIZE
|
||||
)
|
||||
|
||||
addon.API.UpdateCzechFont(
|
||||
frame.inform,
|
||||
CzechQuestsAddon_Store.config.TACTIC_TEXT_FONT_NAME,
|
||||
CzechQuestsAddon_Store.config.TACTIC_TEXT_FONT_SIZE
|
||||
)
|
||||
|
||||
for _, header in ipairs(self.headers) do
|
||||
addon.API.UpdateCzechFont(
|
||||
header.description,
|
||||
CzechQuestsAddon_Store.config.TACTIC_TEXT_FONT_NAME,
|
||||
CzechQuestsAddon_Store.config.TACTIC_TEXT_FONT_SIZE
|
||||
)
|
||||
end
|
||||
end
|
||||
|
||||
function TacticFrame:InitTab()
|
||||
local frame = self
|
||||
|
||||
local tab = CreateFrame("Button", "EncounterJournalCustomTab", EncounterJournal.encounter.info, "EncounterTabTemplate")
|
||||
tab:SetPoint("TOP", EncounterJournal.encounter.info.modelTab, "BOTTOM", -3, -12)
|
||||
tab:SetSize(50, 40)
|
||||
tab.tooltip = "Taktika"
|
||||
|
||||
local selected = tab:CreateTexture(nil, "BACKGROUND")
|
||||
selected:SetTexture("Interface\\EncounterJournal\\UI-EncounterJournalTextures")
|
||||
selected:SetAllPoints(tab)
|
||||
selected:SetBlendMode("ADD")
|
||||
selected:SetDrawLayer("OVERLAY")
|
||||
selected:SetTexCoord(0, 0.126953125, 0.90234375, 0.9599609375)
|
||||
selected:Hide()
|
||||
tab.selected = selected
|
||||
|
||||
function tab:SetActive(enable)
|
||||
self:SetEnabled(enable);
|
||||
self:GetDisabledTexture():SetDesaturated(not enable);
|
||||
end
|
||||
|
||||
function tab:SetHighlight(enable)
|
||||
if not enable then
|
||||
self.selected:Hide();
|
||||
else
|
||||
self.selected:Show();
|
||||
end
|
||||
end
|
||||
|
||||
frame.tab = tab
|
||||
end
|
||||
|
||||
function TacticFrame:CreateHeader()
|
||||
local frame = self
|
||||
local id = NEXT_HEADER_ID + 1
|
||||
NEXT_HEADER_ID = id
|
||||
|
||||
local HeaderFrame = CreateFrame("FRAME", "CzechQuestsTacticHeader" .. id, frame, "EncounterInfoTemplate")
|
||||
HeaderFrame:SetSize(self:GetParent():GetWidth() - 10, 30)
|
||||
|
||||
addon.API.UpdateCzechFont(
|
||||
HeaderFrame.description,
|
||||
CzechQuestsAddon_Store.config.TACTIC_TEXT_FONT_NAME,
|
||||
CzechQuestsAddon_Store.config.TACTIC_TEXT_FONT_SIZE
|
||||
)
|
||||
|
||||
HeaderFrame.button.abilityIcon:Hide()
|
||||
HeaderFrame.button.portrait:Hide()
|
||||
HeaderFrame.button.icon2:Hide()
|
||||
HeaderFrame.button.icon3:Hide()
|
||||
HeaderFrame.button.icon4:Hide()
|
||||
|
||||
HeaderFrame.button.expandedIcon:SetPoint("TOPLEFT", HeaderFrame.button, "TOPLEFT", 10, -6);
|
||||
HeaderFrame.button.expandedIcon:SetText("+")
|
||||
HeaderFrame.expanded = false
|
||||
|
||||
HeaderFrame.button.title:SetPoint("TOPLEFT", HeaderFrame, "TOPLEFT", 40, -7);
|
||||
HeaderFrame.button.title:SetWidth(self:GetParent():GetWidth() - 110)
|
||||
|
||||
for i = 1, #HeaderFrame.Bullets do
|
||||
HeaderFrame.Bullets[i]:Hide()
|
||||
end
|
||||
wipe(HeaderFrame.Bullets)
|
||||
|
||||
for _, icon in ipairs(HeaderFrame.button.icons) do
|
||||
icon:Hide();
|
||||
end
|
||||
|
||||
HeaderFrame.description:SetWidth(HeaderFrame:GetWidth() - 20)
|
||||
HeaderFrame.description:Hide()
|
||||
HeaderFrame.overviewDescription:Hide()
|
||||
HeaderFrame.descriptionBG:Hide()
|
||||
HeaderFrame.descriptionBGBottom:Hide()
|
||||
|
||||
function HeaderFrame:Open()
|
||||
local parent = self
|
||||
parent.button.expandedIcon:SetText("-")
|
||||
parent.button.expandedIcon:SetPoint("TOPLEFT", HeaderFrame.button, "TOPLEFT", 10, -5);
|
||||
parent.description:Show()
|
||||
parent.descriptionBG:Show()
|
||||
parent.descriptionBGBottom:Show()
|
||||
end
|
||||
|
||||
function HeaderFrame:Close()
|
||||
local parent = self
|
||||
parent.button.expandedIcon:SetText("+")
|
||||
parent.button.expandedIcon:SetPoint("TOPLEFT", HeaderFrame.button, "TOPLEFT", 10, -6);
|
||||
parent.description:Hide()
|
||||
parent.descriptionBG:Hide()
|
||||
parent.descriptionBGBottom:Hide()
|
||||
end
|
||||
|
||||
HeaderFrame.button:SetScript("OnClick", function(self)
|
||||
local parent = self:GetParent()
|
||||
parent.expanded = not parent.expanded
|
||||
|
||||
if parent.expanded then
|
||||
parent:Open()
|
||||
else
|
||||
parent:Close()
|
||||
end
|
||||
|
||||
frame:UpdateHeaderPositions()
|
||||
end)
|
||||
|
||||
table.insert(self.headers, HeaderFrame)
|
||||
|
||||
return HeaderFrame
|
||||
end
|
||||
|
||||
function TacticFrame:UpdateHeaderPositions()
|
||||
local yOffset = -40
|
||||
for _, header in ipairs(self.headers) do
|
||||
header:SetPoint("BOTTOMLEFT", self.inform, "BOTTOMLEFT", 0, yOffset)
|
||||
if header.expanded then
|
||||
yOffset = yOffset - header.description:GetHeight() - 50
|
||||
else
|
||||
yOffset = yOffset - 30
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
function TacticFrame:ClearHeaders()
|
||||
for _, header in ipairs(self.headers) do
|
||||
header:Hide()
|
||||
header:SetParent(nil)
|
||||
header = nil
|
||||
end
|
||||
wipe(self.headers)
|
||||
end
|
|
@ -3004,10 +3004,12 @@ addon.data.quest[8770] = {
|
|||
}
|
||||
addon.data.quest[8787] = {
|
||||
titleMale = "Soupravy výzbroje do terénu",
|
||||
objectiveMale = "Přineste 8 sad odolné zbroje a 8 sad těžké zbroje do Merok Longstride poblíž Hive'Regal. Pro splnění tohoto úkolu musíte také přinést Logistický úkolový briefing VII.",
|
||||
descriptionMale = "Stateční dobrovolníci z Orgrimmarské legie dorazili na Silithus, aby nám pomohli v naší věci. Jejich zásoby zbrojních souprav se během cesty nějak ztratily. Získejte dávku souprav zbroje a doručte je Merokovi Longstridovi do místa, kde se nachází tábor Orgrimmarské legie.",
|
||||
objectiveMale = "Přines 8 Rugged Armor Kits a 8 Heavy Armor Kits k Merokovi Longstridovi poblíž Hive'Regal. Musíš také přinést Logistics Task Briefing VII, abys tento úkol splnil.",
|
||||
objectiveFemale = "Přines 8 Rugged Armor Kits a 8 Heavy Armor Kits k Merokovi Longstridovi poblíž Hive'Regal. Musíš také přinést Logistics Task Briefing VII, abys tento úkol splnila.",
|
||||
descriptionMale = "Stateční dobrovolníci z Orgrimmar Legion dorazili na Silithus, aby nám pomohli v naší věci. Jejich zásoby zbrojních souprav se během cesty nějak ztratily. Získej dávku souprav zbroje a doruč je Merokovi Longstride na místo, kde se nachází tábor Orgrimmar Legionu.",
|
||||
descriptionFemale = "Stateční dobrovolníci z Orgrimmar Legion dorazili na Silithus, aby nám pomohli v naší věci. Jejich zásoby zbrojních souprav se během cesty nějak ztratily. Získej dávku souprav zbroje a doruč je Merokovi Longstride na místo, kde se nachází tábor Orgrimmar Legion.",
|
||||
progressMale = "Máš pro mě něco, <name>?",
|
||||
completionMale = "Ach, ano... Rozdám je vojákům, <name>. Orgrimmarská legie ti děkuje!",
|
||||
completionMale = "Ach, ano... Rozdám je vojákům, <name>. Orgrimmar Legion ti děkuje!",
|
||||
}
|
||||
addon.data.quest[8772] = {
|
||||
titleMale = "Cíl: Hive'Zora Waywatchers",
|
||||
|
@ -7224,10 +7226,13 @@ addon.data.quest[2857] = {
|
|||
}
|
||||
addon.data.quest[2855] = {
|
||||
titleMale = "Divoká kožená ramena",
|
||||
objectiveMale = "Přineste Jangdorovi Swiftstriderovi do tábora Mojache 6 sad silného brnění a divokého psa.",
|
||||
descriptionMale = "Ramena z divoké kůže velmi dobře podpírají postavu nositele a poskytují vynikající ochranu horních částí paží i ramen. Stejně jako u všech brnění z divoké kůže je do předmětu vloženo náhodné, ale velmi účinné vylepšení, které je do něj všíváno.\n\nPro tento vzor budu potřebovat šest silných souprav zbroje a divokou kůži. To by pro vás neměla být příliš vysoká zakázka.",
|
||||
progressMale = "Máte k dispozici šest sad tlustého brnění a divokou révu, které potřebuji?\n\nPovažujte výrobu souprav zbrojí za lekci stabilního a spolehlivého řemesla; důsledná metoda výroby, kterou si osvojíte při práci na těchto soupravách, vám pomůže rozvinout vaše dovednosti pro složitou práci potřebnou k výrobě divokých kožených zbrojí.\n\nKaždá lekce má svůj účel, <name>. Je důležité, abys každou z nich náležitě pojal.",
|
||||
completionMale = "Tyto soupravy brnění jsou kvalitní, <name>. Jestli je něco, co požaduji nejen u své práce, ale i u práce těch, které učím, je to kvalita.\n\nUdělal jsi dobře, že sis tento vzor zasloužil; doufám, že ti přinese stejnou odměnu jako mně.",
|
||||
objectiveMale = "Přines 6 Thick Armor Kits a Wildvine Jangdorovi Swiftstriderovi do Camp Mojache.",
|
||||
descriptionMale = "Ramena Wild Leather velmi dobře podpírají postavu nositele a poskytují vynikající ochranu horním částem paží i ramen. Stejně jako u všech Wild Leather je do předmětu vloženo náhodné, ale velmi účinné vylepšení, které se do něj všívá.\n\nPro tento vzor budu potřebovat šest silných sad zbroje a wildvine. To by pro tebe neměl být příliš velký požadavek.",
|
||||
descriptionFemale = "Ramena Wild Leather podpírají postavu nositele velmi dobře a poskytují vynikající ochranu horních částí paží i ramen. Stejně jako u všech zbrojí Wild Leather je do předmětu vloženo náhodné, ale velmi účinné vylepšení, které je do něj všíváno.\n\nPro tento vzor budu potřebovat šest silných zbrojových sad a wildvine. To by pro tebe neměl být příliš vysoký požadavek.",
|
||||
progressMale = "Máš k dispozici šest sad tlustého brnění a divokou révu, které potřebuji?\n\nPovažuj výrobu souprav zbrojí za lekci stabilního a spolehlivého řemesla; důsledná metoda výroby, kterou si osvojíš při práci na těchto soupravách, ti pomůže rozvinout tvé dovednosti pro složitou práci potřebnou k výrobě Wild Leather armors.\n\nKaždá lekce má svůj účel, <name>. Je důležité, abys každou z nich náležitě pojal.",
|
||||
progressFemale = "Máš k dispozici šest sad tlustého brnění a divokou révu, které potřebuji?\n\nPovažuj výrobu souprav zbrojí za lekci stabilního a spolehlivého řemesla; důsledná metoda výroby, kterou si osvojíš při práci na těchto soupravách, ti pomůže rozvinout tvoje dovednosti pro složitou práci potřebnou k výrobě Wild Leather armors.\n\nKaždá lekce má svůj účel, <name>. Je důležité, abys každou z nich náležitě pojal.",
|
||||
completionMale = "Tyto soupravy brnění jsou kvalitní, <name>. Jestli je něco, co požaduji nejen u své práce, ale i u práce těch, které učím, je to kvalita.\n\nUdělal jsi dobře, že sis tento vzor zasloužil; doufám, že ti přinese stejné odměny, jaké přinesl mně.",
|
||||
completionFemale = "Tyto soupravy brnění jsou kvalitní, <name>. Jestli je něco, co požaduji nejen u své práce, ale i u práce těch, které učím, je to kvalita.\n\nUdělal jsi dobře, že sis tento vzor zasloužila; doufám, že ti přinese stejné odměny, jaké přinesl mně.",
|
||||
}
|
||||
addon.data.quest[2849] = {
|
||||
titleMale = "Kožená vesta Wild",
|
||||
|
|
|
@ -358,8 +358,8 @@ addon.data.quest[83181] = {
|
|||
addon.data.quest[78462] = {
|
||||
titleMale = "Ozvěny soucitu",
|
||||
objectiveMale = "Uzdrav 5 zemských obyvatel ve vesnici Freywold.",
|
||||
descriptionMale = "To poslední, co ona dnes očekávala, bylo, že uvidí Baelgrima - natož že mu pomůže. Ale vzhledem k tomu, že Coreway byla poškozena, asi nemá na výběr. Ona... neví, jak si to spočítat. Je jen logické to přijmout. <Adelgonn začne ve svých kamenných rukou hrubě drtit houbařovo maso. Znepokojivě rychle se z něj stane rozmělněná kaše.> Tady. Smíchej to s bahnem a nanes na zraněného.",
|
||||
descriptionFemale = "To poslední, co ona dnes očekávala, bylo, že uvidí Baelgrima - natož že jí pomůže. Ale vzhledem k tomu, že Coreway byla poškozena, asi nemá na výběr. Ona... neví, jak si to spočítat. Je jen logické to přijmout. <Adelgonn začne ve svých kamenných rukou hrubě drtit houbařovo maso. Znepokojivě rychle se z něj stane rozmělněná kaše.> Tady. Smíchej to s bahnem a nanes na zraněného.",
|
||||
descriptionMale = "To poslední, co jsem dnes očekávala, bylo, že uvidím Baelgrim - natož že mi pomůže. Ale vzhledem k tomu, že Coreway byla poškozena, asi nemá na výběr. Já... nevím, jak si to spočítat. Je jen logické to přijmout. <Adelgonn začne ve svých kamenných rukou hrubě drtit houbařovo maso. Znepokojivě rychle se z něj stane rozmělněná kaše.> Tady. Smíchej to s bahnem a nanes na zraněného.",
|
||||
descriptionFemale = "To poslední, co jsem dnes očekávala, bylo, že uvidím Baelgrima - natož že mi pomůže. Ale vzhledem k tomu, že Coreway byla poškozena, asi nemá na výběr. Já... nevím, jak si to spočítat. Je jen logické to přijmout. <Adelgonn začne ve svých kamenných rukou hrubě drtit houbařovo maso. Znepokojivě rychle se z něj stane rozmělněná kaše.> Tady. Smíchej to s bahnem a nanes na zraněného.",
|
||||
progressMale = "Se zvířaty a elementály jsem už bojovala, ale s nerubiány? Můj lid jsou řemeslníci a horníci - ne válečníci.",
|
||||
completionMale = "<Adelgon hodnotí Moiru, Baelgrima a nakonec i tebe.>\n\nJá... děkuji. Už dlouho se mi nedostalo pomoci od cizinců - nebo od Přísežníků.",
|
||||
completionFemale = "<Adelgonn hodnotí Moiru, Baelgrima a nakonec i tebe.>\n\nJá... děkuji. Už dlouho se mi nedostalo pomoci od cizinců - nebo od Přísežníků.",
|
||||
|
@ -423,8 +423,8 @@ addon.data.quest[78573] = {
|
|||
addon.data.quest[79553] = {
|
||||
titleMale = "Přírodní lék",
|
||||
objectiveMale = "Nasbírej 10 houbařských kusů v Orecregu.",
|
||||
descriptionMale = "Většinu zraněných jsme stabilizovaly. Ale mnozí z těch, které jste zachránili, potřebují další pomoc. Nerubiáni často bojují žíravými jedy, které rozežírají i naši kamennou kůži. Houbařské maso naši léčitelé již dlouho využívají pro jeho léčivou sílu. Houbařské převzetí lomu je jednou ze světlých stránek naší situace. <Na okamžik z Adelgonnova výrazu zmizí obavy.> My Nespoutaní si takových okolností vážíme. Přizpůsobit se je krásná věc. Nemohu opustit Ebonin bok. Pomůžeš mi?",
|
||||
descriptionFemale = "Většinu zraněných jsme stabilizovaly. Ale mnozí z těch, které jste zachránily, potřebují další pomoc. Nerubiáni často bojují žíravými jedy, které rozežírají i naši kamennou kůži. Houbařské maso naši léčitelé již dlouho využívají pro jeho léčivou sílu. Houbařské převzetí lomu je jednou ze světlých stránek naší situace. <Na okamžik z Adelgonnina výrazu zmizí obavy.> My Nespoutané si takových okolností vážíme. Přizpůsobit se je krásná věc. Nemohu opustit Ebonin bok. Pomůžeš mi?",
|
||||
descriptionMale = "Většinu zraněných jsme stabilizovaly. Ale mnozí z těch, které jsi zachránil, potřebují další pomoc. Nerubians často bojují s žíravými jedy, které rozežírají i naše kamenné tělo. Fungarian flesh naši léčitelé již dlouho využívají pro jeho léčivou sílu. Převzetí lomu Fungarians je jednou z nečekaných výhod naší situace. <Adelgonn vypadá vážně pyšně.> Přizpůsobit se je krásná věc. Nemohu opustit Ebona bok. Pomůžeš mi?",
|
||||
descriptionFemale = "Většinu zraněných jsme stabilizovaly. Ale mnozí z těch, které jsi zachránila, potřebují další pomoc. Nerubians často bojují s žíravými jedy, které rozežírají i naše kamenné tělo. Fungarian flesh naši léčitelé již dlouho využívají pro jeho léčivou sílu. Převzetí lomu Fungarians je jednou z nečekaných výhod naší situace, na kterou se přizpůsobíme. <Adelgonn vypadá vážně pyšně.> Přizpůsobíme se, jak to Unbound vždy dělají. Nemohu opustit Ebona bok. Pomůžeš mi?",
|
||||
progressMale = "Prosím, pospěšte si. Někteří zranění potřebují okamžitou péči.",
|
||||
progressFemale = "Prosím, pospěš si. Některé zraněné potřebují okamžitou péči.",
|
||||
completionMale = "Nyní si můžeme vyrobit léčivé obklady...",
|
||||
|
@ -519,7 +519,8 @@ addon.data.quest[83084] = {
|
|||
addon.data.quest[78463] = {
|
||||
titleMale = "Stavební bloky",
|
||||
objectiveMale = "Nasbírej 20 třpytivých rud v Orecregu.",
|
||||
descriptionMale = "Lom je zaplaven fungariány a přilehlé těžební tunely jsou zavalené. Na jeho renovaci teď nemáme čas. Během průzkumu jsem na poli viděl poměrně velké množství opuštěné rudy. To by byl začátek pro kritickou opravu Corewaye... <Baelgrim si povzdechne a zachmuřeně se podívá na zraněné Nesvázané zemáky všude kolem nás.> Jsem tu potřeba. S Adelgonnovými lidmi. S mými lidmi. Nasbíráš rudu místo mě?",
|
||||
descriptionMale = "Lom je zaplaven fungariány a přilehlé těžební tunely jsou zavalené. Na jeho renovaci teď nemáme čas. Během průzkumu jsem na poli viděl poměrně velké množství opuštěné rudy. To by byl začátek pro kritickou opravu Coreway, ale... <Baelgrim si povzdechne a zachmuřeně se podívá na zraněné Unbound zemáky všude kolem nás.> Jsem tu potřeba. S lidmi Adelgonna. S mými lidmi. Nasbíráš rudu místo mě?",
|
||||
descriptionFemale = "Lom je zaplaven fungariány a přilehlé těžební tunely jsou zavalené. Na jeho renovaci teď nemáme čas. Během průzkumu jsem na poli viděla poměrně velké množství opuštěné rudy. To by byl začátek pro kritickou opravu Coreway, ale... <Baelgrim si povzdechne a zachmuřeně se podívá na zraněné Unbound zemáky všude kolem nás.> Jsem tu potřebná. S lidmi Adelgonna. S mými lidmi. Nasbíráš rudu místo mě?",
|
||||
progressMale = "Nasbírej co nejvíce rudy. Naši lidé jsou naší prioritou, ale Coreway musí být stále opravena.",
|
||||
completionMale = "Dobrý. Nevrátíme se tedy s prázdnýma rukama.",
|
||||
}
|
||||
|
@ -540,7 +541,8 @@ addon.data.quest[82792] = {
|
|||
}
|
||||
addon.data.quest[83500] = {
|
||||
titleMale = "Zekvir, pobočník zvěstovatele",
|
||||
objectiveMale = "Porazte Zekvira, pobočníka Posla, v jeho vlastním dómu.",
|
||||
objectiveMale = "Poraz Zekvira, Hand of the Harbinger, v jeho vlastním doupěti.",
|
||||
objectiveFemale = "Poraz Zekvira, Ruku Harbinger, ve jeho vlastním doupěti.",
|
||||
descriptionMale = "Budeme si muset dávat pozor na Zekvira, až se vydáme na průzkum do delv. Myslím, že ještě nejsme dost silní na to, abychom se mu postavili, ale budeme! Budeme pokračovat v průzkumu a získávání pokladů, dokud nebudeme dost silní na to, abychom vypátrali jeho doupě a porazili ho.",
|
||||
descriptionFemale = "Budeme si muset dávat pozor na Zekvira, až se vydáme na průzkum do delv. Myslím, že ještě nejsme dost silné na to, abychom se mu postavily, ale budeme! Budeme pokračovat v průzkumu a získávání pokladů, dokud nebudeme dost silné na to, abychom vypátraly jeho doupě a porazily ho.",
|
||||
completionMale = "Dokázali jsme to! Udělali jsme toto místo bezpečné pro všechny dobrodruhy.\n\nTo by mělo Xal'atath dostat do těžké situace, když jí teď chybí jeden z jejích nejmocnějších přisluhovačů.",
|
||||
|
@ -639,8 +641,8 @@ addon.data.quest[83082] = {
|
|||
addon.data.quest[79526] = {
|
||||
titleMale = "Sedition",
|
||||
objectiveMale = "Promluv si s Merrixem ve Vzestupu radních v Dornogalu.",
|
||||
descriptionMale = "<Plakát zní:> MERRIX je KORUPT! STEELVEIN je SLABÝ! Nedokážou ochránit zemské! Nezajímají se o ně! Plivou na edikty! Merrix byl PODPLACEN, aby znovu otevřel Steelveinovu pašeráckou operaci! Steelvein se schovává za Merrixovu autoritu! Berou si z tvých kapes, aby si nacpali ty své! NEVĚŘTE JEJICH LŽÍM!",
|
||||
descriptionFemale = "<Plakát zní:> MERRIX je KORUPT! STEELVEIN je SLABÝ! Nedokážou ochránit zemské! Nezajímají se o ně! Plivou na edikty! Merrix byl PODPLACEN, aby znovu otevřel Steelveinovu pašeráckou operaci! Steelvein se schovává za Merrixovu autoritu! Berou si z tvých kapes, aby si nacpali ty své! NEVĚŘ SVÝM LŽÍM!",
|
||||
descriptionMale = "<Plakát zní:> MERRIX je CORRUPT! STEELVEIN je SLABÝ! Nedokážou ochránit zemáka! Nezajímají se o něj! Plivou na Edikty! MERRIX byl UPLATNĚN, aby znovu otevřel Steelveinovu pašeráckou operaci! STEELVEIN se schovává za MERRIXovu autoritu! Berou si z tvých kapes, aby si nacpali ty své! NEDŮVĚŘUJTE JEJICH LŽÍM!",
|
||||
descriptionFemale = "<Plakát zní:> MERRIX je ZKAŽENÝ! STEELVEIN je SLABÝ! Nedokážou ochránit země! Nezajímají se o ně! Plivou na Edikty! MERRIX byl PODPLACEN, aby znovu otevřel Steelveinovu pašeráckou operaci! STEELVEIN se schovává za MERRIXovu autoritu! Berou si z tvých kapes, aby si nacpali ty své! NEVĚŘTE JEJICH LŽÍM!",
|
||||
completionMale = "Ano, jsem si vědom situace.\n\nPoněkud mi to narušilo ráno.",
|
||||
}
|
||||
addon.data.quest[81661] = {
|
||||
|
@ -704,7 +706,7 @@ addon.data.quest[79523] = {
|
|||
addon.data.quest[79724] = {
|
||||
titleMale = "Expedice na Titanic!",
|
||||
objectiveMale = "Setkej se s Rannanem u Tří štítů.",
|
||||
descriptionMale = "Náš přítel obchodník nám vyprávěl o malých ostrůvcích u severovýchodního pobřeží, kterým se říká 'Tři štíty'. Kdysi dávno tam prý byla velká aktivita titánů. Mně ta 'aktivita' připadala jako titanský výzkum a vývoj. Vzrušující věc! S Tuberrosem se tam chystáme, abychom to prozkoumali. Tharessa, moje nová učednice z Dračí šupiny, jde s námi, aby viděla opravdové profesionály při práci. Nechceš se k nám přidat?",
|
||||
descriptionMale = "Náš přítel obchodník nám vyprávěl o malých ostrůvcích u severovýchodního pobřeží, kterým se říká 'The Three Shields'. Kdysi dávno tam prý byla velká aktivita titánů. Mně ta 'aktivita' připadala jako titanský výzkum a vývoj. Vzrušující věc! S Tuberrosem se tam chystáme, abychom to prozkoumali. Tharessa, moje nová učednice z Algari Expedition, jde s námi, aby viděla opravdové profesionály při práci. Nechceš se k nám přidat?",
|
||||
completionMale = "Dobře, jsem v pořádku. Je to jen škrábnutí.\n\nAle na sundání jednoho malého gorloka jsme museli být tři, takže je dobře, že jsi se rozhodl přidat se k nám.",
|
||||
completionFemale = "Dobře, jsem v pořádku. Je to jen škrábnutí.\n\nAle na sundání jednoho malého gorloka jsme museli být tři, takže je dobře, že ses rozhodla přidat se k nám.",
|
||||
}
|
||||
|
@ -712,6 +714,7 @@ addon.data.quest[78759] = {
|
|||
titleMale = "Probudit obra",
|
||||
objectiveMale = "Aplikuj elementární mast na horského obra pro Harmota.",
|
||||
descriptionMale = "U Corewaye, tahle věc má náboj! Spojením léčivého bahna s tavicími vlastnostmi ohnivého medu jsme získali mast, která by dokázala probudit celou horu! Což je přesně to, co uděláš. Vezmi směs k našemu zraněnému příteli ve Farneeho rybníku a naplácej mu ji na kůži! Mělo by to stačit, aby se probral a zmírnila se bolestivost. Doufejme, že tak či onak.",
|
||||
descriptionFemale = "U Corewaye, tahle věc má náboj! Spojením léčivého bahna s tavicími vlastnostmi ohnivého medu jsme získali mast, která by dokázala probudit celou horu! Což je přesně to, co uděláš. Vezmi směs k naší zraněné přítelkyni ve Farneeho rybníku a naplácej ji na kůži! Mělo by to stačit, aby se probrala a zmírnila se bolestivost. Doufejme, že tak či onak.",
|
||||
progressMale = "To buď obra probudí a dá ho do pořádku, nebo...\n\nNo, o té druhé možnosti raději nemluvme. Měj trochu víry v tento proces!",
|
||||
completionMale = "No, podívej se na to!\n\nTisíce let dřímá na úpatí vodopádu a probudí se bez jediného zařvání nebo dupnutí nohou.\n\nHah! A Farnee si dělala starosti!\n\nS výrobou té masti jsi si vedl skvěle, <name>. Farnee i já ti patříme velký dík.\n\nNáš nový přítel vypadá taky vděčně!",
|
||||
completionFemale = "No, podívej se na to!\n\nTisíce let dřímá na úpatí vodopádu a probudí se bez jediného zařvání nebo dupnutí nohou.\n\nHah! A Farnee si dělala starosti!\n\nS výrobou té masti jsi si vedla skvěle, <name>. Farnee i já ti patříme velký dík.\n\nNáš nový přítel vypadá taky vděčně!",
|
||||
|
@ -810,8 +813,8 @@ addon.data.quest[79544] = {
|
|||
addon.data.quest[79543] = {
|
||||
titleMale = "Dornogalův dobrodinec",
|
||||
objectiveMale = "Rozděl pašované zboží v okolí Dornogalu.",
|
||||
descriptionMale = "Jsi v jedinečném postavení, <name>. V pozici, ve které se můžeš učit. Setkal ses s těmi, kteří by mohli tohoto 'ohýbače ediktů' postavit před soud, ale co lidé Dornogalu? Co si o tomhle Steelveinovi myslí zemáci? Dělej si ze mě legraci. Vezmi pašované zboží, které jsi zachytil, a odnes je adresátům. Řekni jim, že jde o dar od 'společného přítele'. Možná budeš překvapen, když zjistíš, kdo má z těchto... nezákonných činů prospěch.",
|
||||
descriptionFemale = "Jsi v jedinečném postavení, <name>. V pozici, ve které se můžeš učit. Setkal jsi se s těmi, kteří by mohli tohoto 'ohýbače ediktů' postavit před soud, ale co lidé Dornogalu? Co si o tomhle Steelveinovi myslí zemáci? Dělej si ze mě legraci. Vezmi pašované zboží, které jsi zachytila, a odnes je adresátům. Řekni jim, že jde o dar od 'společného přítele'. Možná budeš překvapen, když zjistíš, kdo má z těchto... nezákonných činů prospěch.",
|
||||
descriptionMale = "Jsi v jedinečném postavení, <name>. V pozici, ve které se můžeš učit. Setkal ses s těmi, kteří by mohli tohoto 'Bender of Edicts' postavit před soud, ale co lidé Dornogalu? Co si o tomhle Steelveinovi myslí zemáci? Dělej si ze mě legraci. Vezmi pašované zboží, které jsi zachytil, a odnes je adresátům. Řekni jim, že jde o dar od 'společného přítele'. Možná budeš překvapen, když zjistíš, kdo má z těchto... nezákonných činů prospěch.",
|
||||
descriptionFemale = "Jsi v jedinečném postavení, <name>. V pozici, ve které se můžeš učit. Setkala jsi se s těmi, kteří by mohli tohoto 'Bender of Edicts' postavit před soud, ale co lidé Dornogalu? Co si o tomhle Steelveinovi myslí zemáci? Dělej si ze mě legraci. Vezmi pašované zboží, které jsi zachytila, a odnes je adresátům. Řekni jim, že jde o dar od 'společného přítele'. Možná budeš překvapená, když zjistíš, kdo má z těchto... nezákonných činů prospěch.",
|
||||
completionMale = "Harthan se zmínil o Ardgrinovi, říkáš?\n\nJe to obchodní dozorce ze Zvonících hlubin. Pokud se pohádal se Steelveinem, rozhodně mě to znepokojuje.",
|
||||
}
|
||||
addon.data.quest[78747] = {
|
||||
|
@ -855,8 +858,8 @@ addon.data.quest[78754] = {
|
|||
addon.data.quest[78749] = {
|
||||
titleMale = "Kdo řídí tento skvělý podnik?",
|
||||
objectiveMale = "Zabij Grand-Heisterku Bokk.",
|
||||
descriptionMale = "Zatímco ses zabýval tunely a dělostřelci, viděla jsem zvláštního kobolda, jak jde do jeskyně na severozápadě. Zdělo se, že si ho koboldi váží víc než ostatních, říkali mu velmistr Bokk a nabízeli mu jídlo, kterému říkáš 'sýr'. To ve mně vyvolává dojem, že je to skutečný vládce. Pokud je ten kobold ve skutečnosti skutečným Wardem této operace, pak bychom měli využít příležitosti a srazit ho k zemi. Setkáme se v této jeskyni.",
|
||||
descriptionFemale = "Zatímco jsem se zabývala tunely a dělostřelci, viděla jsem zvláštního kobolda, jak jde do jeskyně na severozápadě. Zdělo se, že si ho koboldi váží víc než ostatních, říkali mu velmistr Bokk a nabízeli mu jídlo, kterému říkáš 'sýr'. To ve mně vyvolává dojem, že je to skutečný vládce. Pokud je ten kobold ve skutečnosti skutečným Wardem této operace, pak bychom měly využít příležitosti a srazit ho k zemi. Setkáme se v této jeskyni.",
|
||||
descriptionMale = "Zatímco ses zabýval tunely a dělostřelci, viděla jsem zvláštního kobolda, jak jde do jeskyně na severozápadě. Zdělo se, že si ho koboldi váží víc než ostatních, říkali mu Grand-Heister Bokk a nabízeli mu jídlo, kterému říkáš 'sýr'. To ve mně vyvolává dojem, že je to skutečný vládce. Pokud je ten kobold ve skutečnosti skutečným Wardem této operace, pak bychom měli využít příležitosti a srazit ho k zemi. Setkáme se v této jeskyni.",
|
||||
descriptionFemale = "Zatímco jsem se zabývala tunely a dělostřelci, viděla jsem zvláštního kobolda, jak jde do jeskyně na severozápadě. Zdělo se, že si ho koboldi váží víc než ostatních, říkali mu Grand-Heister Bokk a nabízeli mu jídlo, kterému říkáš 'sýr'. To ve mně vyvolává dojem, že je to skutečný vládce. Pokud je ten kobold ve skutečnosti skutečným Wardem této operace, pak bychom měly využít příležitosti a srazit ho k zemi. Setkáme se v této jeskyni.",
|
||||
completionMale = "Ráda tě vidím, <name>. \n\nCítím, jak mi drtí žaludek - to je známka úzkosti. Korgran se každým okamžikem blíží ke svému uzavření a pak bude toto místo v mé péči. \n\nJe to velká zodpovědnost. Ale věřím, že jsem na to připravena.",
|
||||
completionFemale = "Ráda tě vidím, <name>.\n\nCítím, jak mi drtí žaludek - to je známka úzkosti. Korgran se každým okamžikem blíží ke svému uzavření a pak bude toto místo v mé péči.\n\nJe to velká zodpovědnost. Ale věřím, že jsem na to připravena.",
|
||||
}
|
||||
|
@ -1029,7 +1032,7 @@ addon.data.quest[80214] = {
|
|||
}
|
||||
addon.data.quest[81595] = {
|
||||
titleMale = "Sezónní začátek",
|
||||
objectiveMale = "Projděte si odměny, které nabízí Reno Jackson, Sir Finley Mrrgglton a Delverův průvodce.",
|
||||
objectiveMale = "Projděte si odměny, které nabízí Reno Jackson, Sir Finley Mrrgglton a Delver's Guide.",
|
||||
descriptionMale = "Odhalil jsem spoustu nových pokladů, které můžeš najít v delvách! Není čas čekat. Připravím tě na základy, abys mohl vyrazit!",
|
||||
descriptionFemale = "Odhalil jsem spoustu nových pokladů, které můžeš najít v delvách! Není čas čekat. Připravím tě na základy, abys mohla vyrazit!",
|
||||
completionMale = "Není nic lepšího než hledání pokladů! Budeme to potřebovat.\n\nCo? Vypadá to, že někdo spěchá.",
|
||||
|
@ -1316,8 +1319,7 @@ addon.data.quest[81639] = {
|
|||
addon.data.quest[79147] = {
|
||||
titleMale = "Letecký výcvik 101",
|
||||
objectiveMale = "Pomoz Kurdranovi vycvičit rekruty ve vzdušném manévrování.",
|
||||
descriptionMale = "Nyní, když jsou přítomní všichni naši rekruti, je nejvyšší čas vzlétnout do vzduchu. Vidíte, co jsem udělal? Nejvyšší čas? Ne? Tak to je správně. Budeme tyhle nováčky zkoušet. Začneme se základy vzdušného manévrování v rychlosti a budeme se snažit simulovat přesné létání, které můžeme očekávat pod zemí. Potom se podíváme, co tihle havrani opravdu umí - Thrall a Lufsela mají něco speciálního.",
|
||||
descriptionFemale = "Nyní, když jsou přítomní všichni naši rekruti, je nejvyšší čas vzlétnout do vzduchu. Vidíš, co jsem udělal? Nejvyšší čas? Ne? Tak to je správně. Budeme tyhle nováčky zkoušet. Začneme se základy vzdušného manévrování v rychlosti a budeme se snažit simulovat přesné létání, které můžeme očekávat pod zemí. Potom se podíváme, co tihle havrani opravdu umí - Thrall a Lufsela mají něco speciálního.",
|
||||
descriptionMale = "Nyní, když jsou přítomní všichni naši rekruti, je nejvyšší čas vzlétnout do vzduchu. Vidíš, co jsem udělal? Nejvyšší čas? Ne? Tak to je správně. Budeme tyhle nováčky zkoušet. Začneme se základy vzdušného manévrování v rychlosti a budeme se snažit simulovat přesné létání, které můžeme očekávat pod zemí. Potom se podíváme, co tihle havrani opravdu umí - Thrall a Lufsela mají něco speciálního.",
|
||||
progressMale = "Dejme těmto novým jezdcům dobrý příklad. Veďte je po trati co nejrychleji.",
|
||||
completionMale = "Tady to máte! Suroví rekruti z kamene, kteří se vznášejí na hřbetech ptáků z blesků. Důkaz, že Kurdran může naučit létat cokoli!\n\nAle ještě jsme neskončili.",
|
||||
completionFemale = "Tady to máte! Suroví rekruti z kamene, kteří se vznášejí na hřbetech ptáků z blesků. Důkaz, že Kurdran dokáže naučit létat cokoli!\n\nAle ještě jsem neskončil.",
|
||||
|
@ -1892,7 +1894,7 @@ addon.data.quest[83721] = {
|
|||
titleMale = "Malý oceán krve",
|
||||
objectiveMale = "Nasbírej dostatek nerubijské krve pro Shalbův experiment.",
|
||||
objectiveFemale = "Nasbírej dostatek nerubijské krve pro Shalbaův experiment.",
|
||||
descriptionMale = "Výborně! Konec se blíží! Ale i když se blížíme k dokončení, nemůžeme se obejít bez nejdůležitější části této genetické rovnice - bez krve. Potřebujeme malý oceán nerubijské krve. Aby však byla tato evoluční forma blbuvzdorná, musí krev pocházet od nejsilnějších nerubiánů, kteří existují. Ať už skyrazorských, nebo povznesených, na tom nezáleží. To nám zaručí, že budeme mít nejlepší dostupný genetický materiál. Takový materiál, jaký si Siesbarg zaslouží!",
|
||||
descriptionMale = "Výborně! Konec se blíží! Ale i když se blížíme k dokončení, nemůžeme se obejít bez nejdůležitější části této genetické rovnice - bez krve. Potřebujeme malý oceán nerubijské krve. Aby však byla tato evoluční forma blbuvzdorná, musí krev pocházet od nejsilnějších nerubianů, kteří existují. Ať už skyrazor, nebo Ascended, na tom nezáleží. To nám zaručí, že budeme mít nejlepší dostupný genetický materiál. Takový materiál, jaký si Siesbarg zaslouží!",
|
||||
progressMale = "Můj experiment se blíží ke konci, overcrawlere.",
|
||||
completionMale = "Připravte se – jste právě svědky dokonalosti!",
|
||||
}
|
||||
|
@ -3581,8 +3583,8 @@ addon.data.quest[82916] = {
|
|||
}
|
||||
addon.data.quest[83275] = {
|
||||
titleMale = "Okouzlování výstroje",
|
||||
objectiveMale = "Dokončete výukový kurz očarování předmětů pomocí předmětů získaných od Ellerdin nebo pomocí vlastních předmětů.",
|
||||
objectiveFemale = "Dokonči výukový kurz očarování předmětů pomocí předmětů získaných od Ellerdin nebo pomocí vlastních předmětů.",
|
||||
objectiveMale = "Dokonči výukový kurz očarování předmětů očarováním jakéhokoliv prstenu pomocí očarování získaného od Ellerdin, Enchant Ring - Glimmering Haste.",
|
||||
objectiveFemale = "Dokonči výukový kurz očarování předmětů tím, že očaruješ jakýkoliv prsten pomocí očarování daného od Ellerdin, Enchant Ring - Glimmering Haste.",
|
||||
descriptionMale = "Ahoj, Outlandere! Od tvého dramatického příchodu k našim břehům jsem slyšela o tvých hrdinských činech. My pozemšťané vítáme tvoji pomoc. Mohu tě naučit, jak očarovat tvoji výbavu pomocí surovin z mé země. K poražení našich nepřátel pomůže každý kousek síly.",
|
||||
descriptionFemale = "Ahoj, Outlandere! Od tvého dramatického příchodu k našim břehům jsem slyšela o tvých hrdinských činech. My zemáci vítáme tvou pomoc. Mohu tě naučit, jak očarovat tvou výbavu pomocí surovin z mé země. K poražení našich nepřátel pomůže každý kousek síly.",
|
||||
progressMale = "Kouzlo a prsten, které ti dala, se k sobě hodí. Můžeš také použít svůj vlastní.",
|
||||
|
@ -3633,6 +3635,7 @@ addon.data.quest[82486] = {
|
|||
addon.data.quest[83489] = {
|
||||
titleMale = "Shromáždění všech gladiátorů!",
|
||||
objectiveMale = "Doruč inzerát Hotharnovi k Contender's Gate v Dornogolu.",
|
||||
objectiveFemale = "Doruč inzerát Hotharnovi k Contender's Gate v Dornogalu.",
|
||||
descriptionMale = "Přijď jeden, přijď všichni, rovnou do Dornogal! Kromě obvyklého výběru mocného vybavení nabízeného v Contender's Gate si mohou začínající bojovníci a osvědčení gladiátoři zakoupit heraldické žetony, které lze použít k výrobě vybavení certifikovaného pro použití v arénách a na bojištích! Předlož tuto brožuru Hotharnovi a získej jich několik, na nás! - Aisha",
|
||||
descriptionFemale = "Přijďte jeden, přijďte všichni, rovnou do Dornogal! Kromě obvyklého výběru mocného vybavení nabízeného v Contender's Gate si mohou začínající bojovníci a osvědčení gladiátoři zakoupit heraldické žetony, které lze použít k výrobě vybavení certifikovaného pro použití v arénách a na bojištích! Předlož tuto brožuru Hotharnovi a získej jich několik na náš účet! - Aisha",
|
||||
completionMale = "Už jsem si říkal, kdy se objeví ti dychtiví bojovníci.\n\nJak jsem slíbil, tady je máte. Používejte je při zadávání řemeslných zakázek nebo při výrobě vlastního vybavení. Výsledek bude stejně mocný jako to, co prodává Lalandi, ale tyhle jsou skvělé, když hledáte něco upraveného podle svých představ. Pokud budeš potřebovat další, víš, kde mě najdeš.\n\nMáš otázky? Vezmi je na Forgegrounds.",
|
||||
|
@ -3824,8 +3827,8 @@ addon.data.quest[83465] = {
|
|||
titleMale = "Ara-Kara, město ozvěn",
|
||||
objectiveMale = "Biergoth chce, abys zastavil operaci, která probíhá v Ara-Kara.",
|
||||
objectiveFemale = "Biergoth chce, abys zastavila operaci, která probíhá v Ara-Kara.",
|
||||
descriptionMale = "Obrátila se na nás Tulumun, agent nového kontaktu známého jako Vizier. Nečekal jsem, že k nám nerubian přijde pro pomoc, ale věc jeho prosby nás všechny zřejmě ohrožovala. Budu potřebovat, abys sestoupil do Azj-Kahet a infiltroval Ara-Kara, City of Echoes. Pokud je pravda, co mi řekl Tulumun, nemůžeme dopustit, aby se to, co tam dole spřádají, dostalo ven. Ukonči jejich operaci a výsledek mi doruč.",
|
||||
descriptionFemale = "Obrátila se na mě Tulumun, agent nového kontaktu známého jako Vizier. Nečekala jsem, že k nám nerubian přijde pro pomoc, ale věc jeho prosby nás všechny zřejmě ohrožovala. Budu potřebovat, abys sestoupila do Azj-Kahet a infiltrovala Ara-Kara, City of Echoes. Pokud je pravda, co mi řekl Tulumun, nemůžeme dopustit, aby se to, co tam dole spřádají, dostalo ven. Ukonči jejich operaci a výsledek mi doruč.",
|
||||
descriptionMale = "Obrátila se na nás Tulumun, agent nového kontaktu známého jako Vizier. Nečekala jsem, že k nám nerubian přijde pro pomoc, ale věc jeho prosby nás všechny zřejmě ohrožovala. Budu potřebovat, abys sestoupil do Azj-Kahet a infiltroval Ara-Kara, City of Echoes. Pokud je pravda, co mi Tulumun řekl, nemůžeme dopustit, aby se to, co tam dole spřádají, dostalo ven. Ukonči jejich operaci a přines důkazy o tom, co najdeš.",
|
||||
descriptionFemale = "Obrátila se na mě Tulumun, agent nového kontaktu známého jako Vizier. Nečekala jsem, že k nám nerubian přijde pro pomoc, ale věc jeho prosby nás všechny zřejmě ohrožovala. Budu potřebovat, abys sestoupila do Azj-Kahet a infiltrovala Ara-Kara, City of Echoes. Pokud je pravda, co mi Tulumun řekl, nemůžeme dopustit, aby se to, co tam dole spřádají, dostalo ven. Ukonči jejich operaci a přines mi důkazy toho, co najdeš.",
|
||||
progressMale = "Pohybuj se rychle. Jejich operaci nelze dovolit, aby se uskutečnila.",
|
||||
completionMale = "Černá krev? Nejsem si jistá, co to je, ale když to nějaký nerubian nazve odporným, vezmu jeho slovo za své.\n\nTady, vezmi si to za svou námahu.",
|
||||
}
|
||||
|
@ -3897,7 +3900,7 @@ addon.data.quest[82502] = {
|
|||
}
|
||||
addon.data.quest[82506] = {
|
||||
titleMale = "Worldsoul: Darkflame Cleft",
|
||||
objectiveMale = "Dokončete dungeon Darkflame Cleft na obtížnost Mythic nebo vyšší.",
|
||||
objectiveMale = "Dokonči dungeon Darkflame Cleft na obtížnost Mythic nebo vyšší.",
|
||||
descriptionMale = "Koboldi! Mohou to být zákeřné potvory, ale... ach, nemůžu si pomoct, ale cítím s nimi jistou spřízněnost! Jejich malé svíčky... udržující jejich malé plamínky... <Faerin si s úsměvem přitiskne ruku na hruď.> Tak stateční! Byli by to ideální Světlonoši, jen kdyby se podělili! A... bylo by méně pravděpodobné, že ti vyškrábou oči. Zprávy o jejich aktivitách v Temnoplamenné štěrbině dělají zemáka starosti. I když bych si přál, aby koboldi byli laskavější, nemůžeme dopustit, aby ubližovali našim spojencům. Prosím, prošetři to!",
|
||||
descriptionFemale = "Koboldi! Mohou to být zákeřné potvory, ale... ach, nemůžu si pomoct, ale cítím s nimi jistou spřízněnost! Jejich malé svíčky... udržující jejich malé plamínky... <Faerin si s úsměvem přitiskne ruku na hruď.> Tak stateční! Byli by to ideální Světlonoši, jen kdyby se podělili! A... bylo by méně pravděpodobné, že ti vyškrábou oči. Zprávy o jejich aktivitách v Temnoplamenné štěrbině dělají zemákům starosti. I když bych si přál, aby koboldi byli laskavější, nemůžeme dopustit, aby ubližovali našim spojencům. Prosím, prošetři to!",
|
||||
}
|
||||
|
@ -4557,7 +4560,7 @@ addon.data.quest[78954] = {
|
|||
}
|
||||
addon.data.quest[78689] = {
|
||||
titleMale = "Když to vede, tak to krvácí",
|
||||
objectiveMale = "Poraz vůdce Kobysů, kteří obléhají Velhanův nárok.",
|
||||
objectiveMale = "Poraz vůdce kobyss, kteří obléhají Velhan's Claim.",
|
||||
descriptionMale = "Všechno stoupá a padá na vůdcovství, <name>. S dobrým vůdcem může jednotka dosáhnout téměř čehokoli. Se špatným vůdcem nastává chaos a úspěch se vzdaluje z dosahu. To jsem zažil na vlastní kůži. Bez vůdců se obléhání kobysů zlomí jako vlna a všechno ostatní, co tu děláme, se stane jednodušším. Viděl jsem tři kobysy, kteří podle všeho vedou ostatní - označím ti jejich polohu na mapě. Vypořádej se s nimi a my budeme moci mnohem lépe pomoci Velhanovu nároku.",
|
||||
progressMale = "Našli jste jejich vůdce? Vypadají silně, ale jsem si jistý, že na tento úkol stačíte.",
|
||||
completionMale = "Vynikající. To nás a kobyss postaví do rovnější pozice. Alespoň co se týče vedení.\n\nStále nás sice početně převyšují, ale popořadě.",
|
||||
|
@ -4614,7 +4617,7 @@ addon.data.quest[83532] = {
|
|||
titleMale = "Rybářské derby Hallowfall",
|
||||
objectiveMale = "Chyť tyto trofejní ryby dříve, než vyprší bonus Derby Dasher: Crystalline Sturgeon, Specular Rainbowfish, Sanguine Dogfish.",
|
||||
descriptionMale = "Život je tu vždycky na hraně, <name>. Nerubiáni, kobysové, hlad - vždycky se najde něco, co je připraveno tě zabít. Proto si musíme najít chvíle, kdy si můžeme odpočinout a vyzkoušet si něco jiného než přežití. Třeba rybaření. Když jsem vyrůstala, můj táta vždycky trávil soboty rybařením. Říkával: 'Udělej si čas sám na sebe, jinak nemůžeš být efektivní pro ostatní.' A tak každou sobotu vyzývám lidi na Hallowfall Fishing Derby. Máš tři hodiny na to, abys ulovil trofejní rybu. Uvidíme, co mi přineseš!",
|
||||
descriptionFemale = "Život je tu vždycky na hraně, <name>. Nerubiáni, kobysové, hlad - vždycky se najde něco, co je připraveno tě zabít. Proto si musíme najít chvíle, kdy si můžeme odpočinout a vyzkoušet si něco jiného než přežití. Třeba rybaření. Když jsem vyrůstala, můj táta vždycky trávil soboty rybařením. Říkával: 'Udělej si čas sama na sebe, jinak nemůžeš být efektivní pro ostatní.' A tak jsem si říkala, že je to pravda. Takže každou sobotu vyzývám lidi na Hallowfall Fishing Derby. Máš tři hodiny na to, abys ulovila trofejní rybu. Uvidíme, co mi přineseš!",
|
||||
descriptionFemale = "Život je tu vždycky na hraně, <name>. Nerubiáni, kobyssové, hlad - vždycky se najde něco, co je připraveno tě zabít. Proto si musíme najít chvíle, kdy si můžeme odpočinout a vyzkoušet si něco jiného než přežití. Třeba rybaření. Když jsem vyrůstal, můj táta vždycky trávil soboty rybařením. Říkával: 'Udělej si čas pro sebe, jinak nemůžeš být efektivní pro ostatní.' A tak každou sobotu vyzývám lidi na Hallowfall Fishing Derby. Máš tři hodiny na to, abys ulovila trofejní rybu. Uvidíme, co mi přineseš!",
|
||||
progressMale = "Nějaké kousnutí, <name>?",
|
||||
completionMale = "To jsou skvělé úlovky, <name>! Nemůžu se dočkat, až uvidím, co chytíš příští týden!",
|
||||
}
|
||||
|
@ -4680,8 +4683,8 @@ addon.data.quest[82810] = {
|
|||
addon.data.quest[83531] = {
|
||||
titleMale = "Rybářské derby Hallowfall",
|
||||
objectiveMale = "Chyť tyto trofejní ryby dříve, než vyprší bonus Derby Dasher: Dilly-Dally Dace, Dornish Pike, Azj-Kahet Slum Shark.",
|
||||
descriptionMale = "Život je tu vždycky na hraně, <name>. Nerubiani, kobyss, hlad - vždycky se najde něco, co je připraveno tě zabít. Proto si musíme najít chvíle, kdy si můžeme odpočinout a vyzkoušet si něco jiného než přežití. Třeba rybaření. Když jsem vyrůstala, můj táta vždycky trávil soboty rybařením. Říkal: 'Udělej si čas sám na sebe, jinak nemůžeš být efektivní pro ostatní.' A tak jsem si říkala, že je to pravda. Takže každou sobotu vyzývám lidi na Hallowfall Fishing Derby. Máš jednu hodinu na to, abys ulovil trofejní rybu. Uvidíme, co mi přineseš!",
|
||||
descriptionFemale = "Život je tu vždycky na hraně, <name>. Nerubiané, kobyss, hlad - vždycky se najde něco, co je připraveno tě zabít. Proto si musíme najít chvíle, kdy si můžeme odpočinout a vyzkoušet si něco jiného než přežití. Třeba rybaření. Když jsem vyrůstala, můj táta vždycky trávil soboty rybařením. Říkal: 'Udělej si čas sama na sebe, jinak nemůžeš být efektivní pro ostatní.' A tak jsem si říkala, že je to pravda. Takže každou sobotu vyzývám lidi na Hallowfall Fishing Derby. Máš jednu hodinu na to, abys ulovila trofejní rybu. Uvidíme, co mi přineseš!",
|
||||
descriptionMale = "Život je tu vždycky na hraně, <name>. Nerubiáni, kobysové, hlad - vždycky se najde něco, co je připraveno tě zabít. Proto si musíme najít chvíle, kdy si můžeme odpočinout a vyzkoušet si něco jiného než přežití. Třeba rybaření. Když jsem vyrůstal, můj táta vždycky trávil soboty rybařením. Říkával: 'Udělej si čas sám na sebe, jinak nemůžeš být efektivní pro ostatní.' A tak jsem si říkal, že je to pravda. Takže každou sobotu vyzývám lidi na rybářské derby Hallowfall. Máš jednu hodinu na to, abys ulovil trofejní rybu. Uvidíme, co mi přineseš!",
|
||||
descriptionFemale = "Život je tu vždycky na hraně, <name>. Nerubiáni, kobysové, hlad - vždycky se najde něco, co je připraveno tě zabít. Proto si musíme najít chvíle, kdy si můžeme odpočinout a vyzkoušet si něco jiného než přežití. Třeba rybaření. Když jsem vyrůstal, můj táta vždycky trávil soboty rybařením. Říkával: 'Udělej si čas sama na sebe, jinak nemůžeš být efektivní pro ostatní.' A tak jsem si říkal, že je to pravda. Takže každou sobotu vyzývám lidi na rybářské derby Hallowfall. Máš jednu hodinu na to, abys ulovila trofejní rybu. Uvidíme, co mi přineseš!",
|
||||
progressMale = "Nějaké kousnutí, <name>?",
|
||||
completionMale = "To jsou skvělé úlovky, <name>! Nemůžu se dočkat, až uvidím, co chytíš příští týden!",
|
||||
}
|
||||
|
@ -4710,8 +4713,8 @@ addon.data.quest[78628] = {
|
|||
addon.data.quest[78670] = {
|
||||
titleMale = "Sabotáž obléhacích zbraní",
|
||||
objectiveMale = "Znič 4 obléhací zbraně pod Tenir's Ascent.",
|
||||
descriptionMale = "<name>, pokud chceme nerubiany zadržet, musíme se vypořádat s jejich obléhacími zbraněmi. Kolem Tenirského výstupu jsou sudy s černým prachem, které zásobují naše lodě pro boj. Protože nerubiáni tyto lodě chytili na zemi, využijme tento prach k práci. Seber pár sudů a odnese je k nerubijským obléhacím zbraním.",
|
||||
descriptionFemale = "<name>, pokud chceme nerubiany zadržet, musíme se vypořádat s jejich obléhacími zbraněmi. Kolem Tenirského výstupu jsou sudy s černým prachem, které zásobují naše lodě pro boj. Protože nerubiáni tyto lodě chytili na zemi, využijme tento prach k práci. Seber pár sudů a odneste je k nerubijským obléhacím zbraním.",
|
||||
descriptionMale = "<name>, pokud chceme nerubiány zadržet, musíme se vypořádat s jejich obléhacími zbraněmi. Kolem Tenir's Ascent jsou sudy s černým prachem, které zásobují naše lodě k boji. Protože nerubiáni tyto lodě chytili na zemi, využijme tento prach. Seber pár sudů a odnes je k nerubiánským obléhacím zbraním.",
|
||||
descriptionFemale = "<name>, pokud chceme nerubiány zadržet, musíme se vypořádat s jejich obléhacími zbraněmi. Kolem Tenir's Ascent jsou sudy s černým prachem, které zásobují naše lodě pro boj. Protože nerubiáni tyto lodě chytili na zemi, využijme tento prach k práci. Seber pár sudů a odnes je k nerubiánským obléhacím zbraním.",
|
||||
progressMale = "Podařilo se ti zničit jejich obléhací zbraně, <name>?",
|
||||
completionMale = "Po zničení těchto obléhacích zbraní jsme na tom mnohem lépe. Faerin se vydala napřed, aby s Velkým Kyronem zapálila Úsvitnou věž. Požádala nás, abychom se tam s nimi setkali.",
|
||||
}
|
||||
|
@ -4731,8 +4734,8 @@ addon.data.quest[78668] = {
|
|||
addon.data.quest[76394] = {
|
||||
titleMale = "Stíny chuti",
|
||||
objectiveMale = "Nasbírej 10 stínoslepých skupin, 5 šupináčů z temnoty a lahvičku soumračného koření.",
|
||||
descriptionMale = "Rozhodl jsem se vytvořit jídlo, které se vymyká běžným zvyklostem, takové, které by neodmítl ani císař. K vytvoření tohoto výjimečného jídla potřebuji ingredience z nejtemnějších stínů. Mnozí tyto ingredience považují za zakázané, ale v mých rukou se stanou harmonií světla a stínu. Prosím, pomozte mi a nasbírejte následující ingredience: Stínoslepý Gruper, Temně zúrodněné Šalotky a lahvičku koření Soumrak.",
|
||||
descriptionFemale = "Rozhodl jsem se vytvořit jídlo, které se vymyká běžným zvyklostem, takové, které by neodmítl ani císař. K vytvoření tohoto výjimečného jídla potřebuji ingredience z nejtemnějších stínů. Mnozí tyto ingredience považují za zakázané, ale v mých rukou se stanou harmonií světla a stínu. Prosím, pomoz mi a nasbírej následující ingredience: Stínoslepý Gruper, Temně zúrodněné Šalotky a lahvičku koření Soumrak.",
|
||||
descriptionMale = "Rozhodl jsem se vytvořit jídlo, které se vymyká běžným zvyklostem, takové, které by neodmítl ani Emperor. K vytvoření tohoto výjimečného jídla potřebuji ingredience z nejtemnějších stínů. Mnozí tyto ingredience považují za zakázané, ale v mých rukou se stanou harmonií světla a stínu. Prosím, pomoz mi a nasbírej následující ingredience: Shadowblind Grouper, Dark-Nurtured Scallions a Vial of Twilight Spice.",
|
||||
descriptionFemale = "Rozhodla jsem se vytvořit jídlo, které se vymyká běžným zvyklostem, takové, které by neodmítl ani Emperor. K vytvoření tohoto výjimečného jídla potřebuji ingredience z nejtemnějších stínů. Mnozí tyto ingredience považují za zakázané, ale v mých rukou se stanou harmonií světla a stínu. Prosím, pomoz mi a nasbírej následující ingredience: Shadowblind Grouper, Dark-Nurtured Scallions a Vial of Twilight Spice.",
|
||||
progressMale = "Našli jste všechny ingredience?",
|
||||
progressFemale = "Našel jsi všechny ingredience?",
|
||||
completionMale = "Nyní se děje kouzlo. Vyzkoušej si tento výtvor na vlastní kůži.",
|
||||
|
@ -4849,8 +4852,8 @@ addon.data.quest[78621] = {
|
|||
addon.data.quest[78691] = {
|
||||
titleMale = "Ten, který utekl",
|
||||
objectiveMale = "Zachraň Maxmiliána při havárii lodi Indomitable.",
|
||||
descriptionMale = "<name>, můj syn je venku s kobysy. Přesvědčil ostatní děti, že by se s ním měly vyplížit do boje. Říkal, že by měli 'být stateční jako můj táta'. Když se setkali s kobyssem, ostatní se všichni rozběhli zpátky sem, zatímco on běžel k havarované lodi, aby ji odvedl pryč. Nezachoval jsem se statečně, <name>. V příběhu o Neohroženém se píše, že jsem byl hrdina; ty lži byly mou zprávou. Jestli byl někdy čas se vzchopit, tak je to teď. Ale sám se kobysovi nevyrovnám. Pojď se mnou, <name> - pomoz mi zachránit Maxmiliána.",
|
||||
descriptionFemale = "<name>, můj syn je venku s kobysy. Přesvědčil ostatní děti, že by se s ním měly vyplížit do boje. Říkal, že by měly 'být statečné jako můj táta'. Když se setkali s kobyssem, ostatní se všichni rozběhli zpátky sem, zatímco on běžel k havarované lodi, aby ji odvedl pryč. Nezachoval jsem se statečně, <name>. V příběhu o Neohroženém se píše, že jsem byl hrdina; ty lži byly mou zprávou. Jestli byl někdy čas se vzchopit, tak je to teď. Ale sám se kobysovi nevyrovnám. Pojď se mnou, <name> - pomoz mi zachránit Maxmiliána.",
|
||||
descriptionMale = "<name>, můj syn je venku s kobyss. Přesvědčil ostatní děti, že by se s ním měly vyplížit do boje. Říkal, že by měli 'být stateční jako můj táta'. Když se setkali s kobyss, ostatní se všichni rozběhli zpátky sem, zatímco on běžel k havarované lodi, aby ji odvedl pryč. Nezachoval jsem se statečně, <name>. V příběhu o Indomitable se píše, že jsem byl hrdina; ty lži byly mou zprávou. Jestli byl někdy čas se vzchopit, tak je to teď. Ale sám se kobyssovi nevyrovnám. Pojď se mnou, <name> - pomoz mi zachránit Maximillian.",
|
||||
descriptionFemale = "<name>, můj syn je venku s kobyss. Přesvědčil ostatní děti, že by se s ním měly vyplížit do boje. Říkal, že by měly 'být statečné jako můj táta'. Když se setkali s kobyss, ostatní se všichni rozběhli zpátky sem, zatímco on běžel k havarované lodi, aby ji odvedl pryč. Nezachoval jsem se statečně, <name>. V příběhu o Indomitable se píše, že jsem byl hrdina; ty lži byly mou zprávou. Jestli byl někdy čas se vzchopit, tak je to teď. Ale sám se kobyssovi nevyrovnám. Pojď se mnou, <name> - pomoz mi zachránit Maximillian.",
|
||||
progressMale = "Soustřeď se, <name> - musíme najít mého syna.",
|
||||
completionMale = "Vím, že to zní banálně, <name>, ale nikdy bych ti nedokázal dostatečně poděkovat za to, že jsi Maxe dostal v pořádku domů.\n\nDíky tomu všemu jsi mi také ukázal, že musím být vpředu a vést své lidi. Viděl jsem, že existují i horší následky než smrt.\n\nNemohu napravit chyby, kterých jsem se v minulosti dopustil, ale mohu si být jistý, že se nebudou opakovat.",
|
||||
completionFemale = "Vím, že to zní banálně, <name>, ale nikdy bych ti nedokázal dostatečně poděkovat za to, že jsi Maxe dostala v pořádku domů.\n\nDíky tomu všemu jsi mi také ukázala, že musím být vpředu a vést své lidi. Viděl jsem, že existují i horší následky než smrt.\n\nNemohu napravit chyby, kterých jsem se v minulosti dopustil, ale mohu si být jistý, že se nebudou opakovat.",
|
||||
|
@ -5350,7 +5353,7 @@ addon.data.quest[82847] = {
|
|||
}
|
||||
addon.data.quest[76247] = {
|
||||
titleMale = "Udržujte domácí ohně v plamenech",
|
||||
objectiveMale = "5 Hillhelm Remnant Supply shromážděno a použito k posílení Hillhelm Keyflame.",
|
||||
objectiveMale = "5 Hillhelm Remnant Supplies shromážděny a použity k posílení Hillhelm Keyflame.",
|
||||
descriptionMale = "Klíčové plamenné ohně rozmístěné po celé krajině udržují temnotu na uzdě a náš lid v bezpečí. Mnohé z nich potemněly, protože se stále hůře shánějí zbytky zářičů, které jsou k jejich údržbě potřeba. Tvrdě jsem pracovala, abych zajistila, že naše výhně budou vždy zapálené, ale vždy bych potřebovala tvou pomoc. Prosím, shromáždi zbytky z našich zásob a použij je, abys pomohl posílit náš rodinný klíčový plamen.",
|
||||
descriptionFemale = "Klíčové plamenné ohně rozmístěné po celé krajině udržují temnotu na uzdě a náš lid v bezpečí. Mnohé z nich potemněly, protože se stále hůře shánějí zbytky zářičů, které jsou k jejich údržbě potřeba. Tvrdě jsem pracovala, abych zajistila, že naše výhně budou vždy zapálené, ale vždy bych potřebovala tvou pomoc. Prosím, shromáždi zbytky z našich zásob a použij je, abys pomohla posílit náš rodinný klíčový plamen.",
|
||||
progressMale = "Posílila jsi náš klíčový plamen?",
|
||||
|
@ -5404,8 +5407,7 @@ addon.data.quest[79158] = {
|
|||
addon.data.quest[79173] = {
|
||||
titleMale = "Dodávka úsilí",
|
||||
objectiveMale = "Získej různé ukradené předměty z okolí, abych uspokojil naše potřeby.",
|
||||
descriptionMale = "Když na naše město padl stín, bylo pod rouškou tmy odcizeno mnoho potřebných zásob. S návratem světla je čas na obnovu, ale nejprve musíme získat zpět to, co bylo ztraceno. Prohledejte okolí a získejte zpět všechny zásoby, které by mohly být užitečné. Pak je doručte do Ceren Leadlandu.",
|
||||
descriptionFemale = "Když na naše město padl stín, bylo pod rouškou tmy odcizeno mnoho potřebných zásob. S návratem světla je čas na obnovu, ale nejprve musíme získat zpět to, co bylo ztraceno. Prohledej okolí a získej zpět všechny zásoby, které by mohly být užitečné. Pak je doručte do Ceren Leadlandu.",
|
||||
descriptionMale = "Když na naše město padl stín, bylo pod rouškou tmy odcizeno mnoho potřebných zásob. S návratem světla je čas na obnovu, ale nejprve musíme získat zpět to, co bylo ztraceno. Prohledej okolí a získej zpět všechny zásoby, které by mohly být užitečné. Pak je doruč do Ceren Leadlandu.",
|
||||
progressMale = "Získal jsi zpět ukradené předměty?",
|
||||
completionMale = "Zotavil jsi se mnohem více, než jsem mohl doufat. Něco z toho navíc jsem ti odložil stranou, abys si to mohl vzít.",
|
||||
completionFemale = "Zotavil jsi se mnohem více, než jsem mohl doufat. Něco z toho navíc jsem ti odložil stranou, abys si to mohla vzít.",
|
||||
|
@ -6354,8 +6356,10 @@ addon.data.quest[80000] = {
|
|||
}
|
||||
addon.data.quest[83333] = {
|
||||
titleMale = "Připravujeme se na potíže",
|
||||
objectiveMale = "Dokonč 20 vln události Probuzení stroje.",
|
||||
descriptionMale = "Zdravím přítele, Stroj je opět v havarijním stavu a vyžaduje obnovu. Potřebuji tvé odborné znalosti k úspěšnému provedení údržby. Za dobře provedenou pomoc bude poskytnuta odměna.",
|
||||
objectiveMale = "Dokonči 20 vln událostí Probuzení stroje.",
|
||||
objectiveFemale = "Dokonči 20 vln události Probuzení stroje.",
|
||||
descriptionMale = "Zdravím přítele, stroj je opět v havarijním stavu a vyžaduje obnovu. Potřebuji tvoje odborné znalosti k úspěšnému provedení údržby. Za dobře provedenou pomoc bude poskytnuta odměna.",
|
||||
descriptionFemale = "Zdravím přítelkyni, stroj je opět v havarijním stavu a vyžaduje obnovu. Potřebuji tvé odborné znalosti k úspěšnému provedení údržby. Za dobře provedenou pomoc bude poskytnuta odměna.",
|
||||
progressMale = "Už jsi skončil s touhle rachotinou? Stroj hučí a je spokojený, jo?",
|
||||
progressFemale = "Už jsi skončila s touhle rachotinou? Stroj hučí a je spokojený, jo?",
|
||||
completionMale = "Ach, všechno opravené, lesklé a hladké! Tady máš svůj lesklý kousek, dobře odvedená práce.\n\nTeď si vyměníme nějaké zboží, ano?",
|
||||
|
@ -6377,7 +6381,7 @@ addon.data.quest[80408] = {
|
|||
}
|
||||
addon.data.quest[79030] = {
|
||||
titleMale = "Hlas mluvčích",
|
||||
objectiveMale = "Návrat k Allerie v Dornogalu.",
|
||||
objectiveMale = "Vrať se k Allerii v Dornogalu.",
|
||||
descriptionMale = "Vyřiď prosím zprávu o našem vítězství Allerii v Dornogalu. Jsem si jistá, že naši spojenci budou potěšeni, až uslyší, co můžeme poskytnout pro válečné úsilí.",
|
||||
completionMale = "Jaké úžasné zprávy, <name>!\n\nVáleční golemové se probouzejí a opět pochodují proti našim nepřátelům, stejně jako v dobách minulých.\n\nTvůj příspěvek k věci Strojových mluvčích a celé Zeměploše nebude zapomenut.",
|
||||
completionFemale = "Jaké úžasné zprávy, <name>!\n\nVáleční golemové se probouzejí a opět pochodují proti našim nepřátelům, stejně jako v dobách minulých.\n\nTvůj příspěvek k věci Strojových mluvčích a celé zemáky nebude zapomenut.",
|
||||
|
|
File diff suppressed because it is too large
Load diff
3017
Addon/Data/retail/2.lua
Normal file
3017
Addon/Data/retail/2.lua
Normal file
File diff suppressed because it is too large
Load diff
3001
Addon/Data/retail/3.lua
Normal file
3001
Addon/Data/retail/3.lua
Normal file
File diff suppressed because it is too large
Load diff
2348
Addon/Data/retail/4.lua
Normal file
2348
Addon/Data/retail/4.lua
Normal file
File diff suppressed because it is too large
Load diff
|
@ -3,42 +3,56 @@ local _, addon = ...
|
|||
-- Prepare API object
|
||||
addon.API = {}
|
||||
|
||||
-- Prepare Data objects
|
||||
addon.data = {};
|
||||
addon.data.quest = {};
|
||||
addon.data.item = {};
|
||||
addon.data.speech = {}
|
||||
addon.data.tactic = {}
|
||||
|
||||
-- Expose object as global for other addon integration
|
||||
CzechQuestsAddon = {}
|
||||
CzechQuestsAddon.data = addon.data
|
||||
|
||||
local function SetDefault(key, default)
|
||||
if CzechQuestsAddon_Store.config[key] == nil then
|
||||
CzechQuestsAddon_Store.config[key] = default
|
||||
end
|
||||
return CzechQuestsAddon_Store.config[key]
|
||||
end
|
||||
|
||||
local function InitStore()
|
||||
-- Init Store
|
||||
CzechQuestsAddon_Store = CzechQuestsAddon_Store or {}
|
||||
CzechQuestsAddon_Store.config = CzechQuestsAddon_Store.config or {}
|
||||
|
||||
-- General Settings
|
||||
CzechQuestsAddon_Store.config.DEBUG_MODE = CzechQuestsAddon_Store.config.DEBUG_MODE or false
|
||||
CzechQuestsAddon_Store.config.DEBUG_MODE = SetDefault("DEBUG_MODE", false)
|
||||
|
||||
-- Quest Settings
|
||||
CzechQuestsAddon_Store.config.QUEST_ENABLED = CzechQuestsAddon_Store.config.QUEST_ENABLED or true
|
||||
CzechQuestsAddon_Store.config.QUEST_DARK_MODE = CzechQuestsAddon_Store.config.QUEST_DARK_MODE or false
|
||||
CzechQuestsAddon_Store.config.QUEST_HEADER_FONT_SIZE = CzechQuestsAddon_Store.config.QUEST_HEADER_FONT_SIZE or 18
|
||||
CzechQuestsAddon_Store.config.QUEST_TEXT_FONT_SIZE = CzechQuestsAddon_Store.config.QUEST_TEXT_FONT_SIZE or 14
|
||||
CzechQuestsAddon_Store.config.QUEST_HEADER_FONT_NAME = CzechQuestsAddon_Store.config.QUEST_HEADER_FONT_NAME or 'morpheus_cz.ttf'
|
||||
CzechQuestsAddon_Store.config.QUEST_TEXT_FONT_NAME = CzechQuestsAddon_Store.config.QUEST_TEXT_FONT_NAME or 'frizquadratatt_cz.ttf'
|
||||
CzechQuestsAddon_Store.config.QUEST_TEXTURE_ALPHA = CzechQuestsAddon_Store.config.QUEST_TEXTURE_ALPHA or 80
|
||||
CzechQuestsAddon_Store.config.QUEST_TEXTURE_ALPHA_ONLY_MOVING = CzechQuestsAddon_Store.config.QUEST_TEXTURE_ALPHA_ONLY_MOVING or true
|
||||
CzechQuestsAddon_Store.config.QUEST_ENABLED = SetDefault("QUEST_ENABLED", true)
|
||||
CzechQuestsAddon_Store.config.QUEST_DARK_MODE = SetDefault("QUEST_DARK_MODE", false)
|
||||
CzechQuestsAddon_Store.config.QUEST_HEADER_FONT_SIZE = SetDefault("QUEST_HEADER_FONT_SIZE", 18)
|
||||
CzechQuestsAddon_Store.config.QUEST_TEXT_FONT_SIZE = SetDefault("QUEST_TEXT_FONT_SIZE", 14)
|
||||
CzechQuestsAddon_Store.config.QUEST_HEADER_FONT_NAME = SetDefault("QUEST_HEADER_FONT_NAME", 'morpheus_cz.ttf')
|
||||
CzechQuestsAddon_Store.config.QUEST_TEXT_FONT_NAME = SetDefault("QUEST_TEXT_FONT_NAME", 'frizquadratatt_cz.ttf')
|
||||
CzechQuestsAddon_Store.config.QUEST_TEXTURE_ALPHA = SetDefault("QUEST_TEXTURE_ALPHA", 80)
|
||||
CzechQuestsAddon_Store.config.QUEST_TEXTURE_ALPHA_ONLY_MOVING = SetDefault("QUEST_TEXTURE_ALPHA_ONLY_MOVING", true)
|
||||
|
||||
-- Speech Settings
|
||||
CzechQuestsAddon_Store.config.SPEECH_ENABLED = CzechQuestsAddon_Store.config.SPEECH_ENABLED or true
|
||||
CzechQuestsAddon_Store.config.SPEECH_TEXT_FONT_SIZE = CzechQuestsAddon_Store.config.SPEECH_TEXT_FONT_SIZE or 13
|
||||
CzechQuestsAddon_Store.config.SPEECH_TEXT_FONT_NAME = CzechQuestsAddon_Store.config.SPEECH_TEXT_FONT_NAME or 'frizquadratatt_cz.ttf'
|
||||
CzechQuestsAddon_Store.config.SPEECH_FRAME_WIDTH = CzechQuestsAddon_Store.config.SPEECH_FRAME_WIDTH or 320
|
||||
CzechQuestsAddon_Store.config.SPEECH_ORIGINAL_WHEN_MISSING = CzechQuestsAddon_Store.config.SPEECH_ORIGINAL_WHEN_MISSING or false
|
||||
CzechQuestsAddon_Store.config.SPEECH_MESSAGE_TEXTURE_ALPHA = CzechQuestsAddon_Store.config.SPEECH_MESSAGE_TEXTURE_ALPHA or 40
|
||||
CzechQuestsAddon_Store.config.SPEECH_FRAME_POSITION_X = CzechQuestsAddon_Store.config.SPEECH_FRAME_POSITION_X or 0
|
||||
CzechQuestsAddon_Store.config.SPEECH_FRAME_POSITION_Y = CzechQuestsAddon_Store.config.SPEECH_FRAME_POSITION_Y or 0
|
||||
CzechQuestsAddon_Store.config.SPEECH_ENABLED = SetDefault("SPEECH_ENABLED", true)
|
||||
CzechQuestsAddon_Store.config.SPEECH_TEXT_FONT_SIZE = SetDefault("SPEECH_TEXT_FONT_SIZE", 13)
|
||||
CzechQuestsAddon_Store.config.SPEECH_TEXT_FONT_NAME = SetDefault("SPEECH_TEXT_FONT_NAME", 'frizquadratatt_cz.ttf')
|
||||
CzechQuestsAddon_Store.config.SPEECH_FRAME_WIDTH = SetDefault("SPEECH_FRAME_WIDTH", 320)
|
||||
CzechQuestsAddon_Store.config.SPEECH_ORIGINAL_WHEN_MISSING = SetDefault("SPEECH_ORIGINAL_WHEN_MISSING", false)
|
||||
CzechQuestsAddon_Store.config.SPEECH_MESSAGE_TEXTURE_ALPHA = SetDefault("SPEECH_MESSAGE_TEXTURE_ALPHA", 40)
|
||||
CzechQuestsAddon_Store.config.SPEECH_FRAME_POSITION_X = SetDefault("SPEECH_FRAME_POSITION_X", 0)
|
||||
CzechQuestsAddon_Store.config.SPEECH_FRAME_POSITION_Y = SetDefault("SPEECH_FRAME_POSITION_Y", 0)
|
||||
|
||||
-- Tactic Settings
|
||||
CzechQuestsAddon_Store.config.TACTIC_ENABLED = SetDefault("TACTIC_ENABLED", true)
|
||||
CzechQuestsAddon_Store.config.TACTIC_TEXT_FONT_SIZE = SetDefault("TACTIC_TEXT_FONT_SIZE", 12)
|
||||
CzechQuestsAddon_Store.config.TACTIC_TEXT_FONT_NAME = SetDefault("TACTIC_TEXT_FONT_NAME", 'frizquadratatt_cz.ttf')
|
||||
end
|
||||
|
||||
-- Event handler frame
|
||||
|
@ -49,6 +63,9 @@ local function OnEvent(self, event, addonName, ...)
|
|||
addon.API.InitOptions()
|
||||
addon.API.InitQuests()
|
||||
addon.API.InitSpeeches()
|
||||
if (WOW_PROJECT_ID ~= WOW_PROJECT_CLASSIC) then
|
||||
addon.API.InitTactics()
|
||||
end
|
||||
self:UnregisterEvent("ADDON_LOADED")
|
||||
end
|
||||
end
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
## Interface: 110100
|
||||
## Title: CzechQuests
|
||||
## Title: Czech Quests
|
||||
## Notes: Addon displays texts of quests in Czech language
|
||||
## Author: Roman Jaroš
|
||||
## Version: 1.0.1
|
||||
|
@ -11,6 +11,9 @@ CzechQuests.lua
|
|||
|
||||
Addon/Data/0.lua
|
||||
Addon/Data/1.lua
|
||||
Addon/Data/2.lua
|
||||
Addon/Data/3.lua
|
||||
Addon/Data/4.lua
|
||||
|
||||
Addon/Data/other.lua
|
||||
|
||||
|
@ -26,3 +29,6 @@ Addon/Code/Quest.lua
|
|||
Addon/Code/SpeechDataApi.lua
|
||||
Addon/Code/SpeechFrame.lua
|
||||
Addon/Code/Speech.lua
|
||||
|
||||
Addon/Code/TacticFrame.lua
|
||||
Addon/Code/Tactic.lua
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
## Interface: 11505
|
||||
## Title: CzechQuests
|
||||
## Title: Czech Quests
|
||||
## Notes: Addon displays texts of quests in Czech language as tooltip
|
||||
## Author: Roman Jaroš
|
||||
## Version: 1.0.1
|
||||
|
@ -28,3 +28,6 @@ Addon/Code/Quest.lua
|
|||
Addon/Code/SpeechDataApi.lua
|
||||
Addon/Code/SpeechFrame.lua
|
||||
Addon/Code/Speech.lua
|
||||
|
||||
Addon/Code/TacticFrame.lua
|
||||
Addon/Code/Tactic.lua
|
3
renovate.json
Normal file
3
renovate.json
Normal file
|
@ -0,0 +1,3 @@
|
|||
{
|
||||
"$schema": "https://docs.renovatebot.com/renovate-schema.json"
|
||||
}
|
BIN
screenshot.png
BIN
screenshot.png
Binary file not shown.
Before Width: | Height: | Size: 930 KiB |
BIN
screenshot2.png
BIN
screenshot2.png
Binary file not shown.
Before Width: | Height: | Size: 647 KiB |
BIN
screenshot3.png
BIN
screenshot3.png
Binary file not shown.
Before Width: | Height: | Size: 452 KiB |
BIN
screenshot4.png
BIN
screenshot4.png
Binary file not shown.
Before Width: | Height: | Size: 620 KiB |
20
sync.sh
20
sync.sh
|
@ -1,20 +0,0 @@
|
|||
#!/bin/bash
|
||||
|
||||
#wow_source_folder="retail"
|
||||
#wow_destiny_folder="retail"
|
||||
|
||||
#wow_destiny_folder="retail"
|
||||
#wow_destiny_folder="beta"
|
||||
|
||||
wow_source_folder="classic_era"
|
||||
wow_destiny_folder="classic_era"
|
||||
|
||||
src_folder="."
|
||||
dest_folder="/Applications/World of Warcraft/_${wow_destiny_folder}_/Interface/AddOns/CzechQuests"
|
||||
|
||||
fswatch -o "$src_folder" | while read -r change; do
|
||||
rsync -avu --delete "$src_folder" "$dest_folder" --exclude={'.*','*.png','*.sh','*.md','Addon/Data/**','downloader/**',"lib/**","Jenkinsfile"}
|
||||
rsync -au --delete "$src_folder/Addon/Data/$wow_source_folder/" "$dest_folder/Addon/Data/"
|
||||
echo "Dest: $dest_folder"
|
||||
cp "$src_folder/Addon/Data/other.lua" "$dest_folder/Addon/Data/"
|
||||
done
|
Loading…
Add table
Reference in a new issue