Բովանդակություն:
- Քայլ 1: Ստեղծեք ձեր նվագարկիչը
- Քայլ 2: Նոր սենյակի ծածկագիր
- Քայլ 3. Փոփոխականից հղում ստեղծելը
- Քայլ 4: Փորձարկում
- Քայլ 5: Ավելացրեք սենյակների ցուցակ
- Քայլ 6: Սենյակների վերացում
- Քայլ 7: Փորձարկում
- Քայլ 8: Տարօրինակություններ շաքարավազի և առարկաների հետ
- Քայլ 9. Clone () գործառույթը
- Քայլ 10: Դա հիմա է:
Video: Հղումներ Twine- ի փոփոխականներից ՝ Sugarcube- ով. 10 քայլ
2024 Հեղինակ: John Day | [email protected]. Վերջին փոփոխված: 2024-01-30 09:46
Ես շատ ուրախ եմ, որ դու նորից միացար ինձ: Սա նշանակում է, որ Վումպուսը ձեզ դեռ չի կերել: Լավ!
Ձեզանից նրանց համար, ովքեր ծանոթ չեն, սա մի շարք ձեռնարկներ են, որոնք ես պատրաստում եմ օգնելու իմ հմայիչ ու աղմկոտ կախարդական զարմիկին իր ավագ նախագծում: Այս ձեռնարկները պետք է հղում լինեն այն ամենի համար, ինչ կարող եք անել Twine- ի և Sugarcube- ի ծրագրավորման որոշ հնարավորությունների հետ: Եթե ցանկանում եք հետևել, այստեղ կարող եք գտնել առաջին ձեռնարկը:
Վերջին ձեռնարկում ես կառուցեցի մի փոքր սենյակ, որը խաղացողը կարող է ուսումնասիրել: Ես ավելացրեցի Wumpus- ի օբյեկտը և որոշ ընդհանուր սենյակի ծածկագիր կազմեցի ՝ փոխելու այն, ինչ ցուցադրվում էր յուրաքանչյուր սենյակում ՝ կախված Wumpus- ի գտնվելու վայրից:
Քայլ 1: Ստեղծեք ձեր նվագարկիչը
Այս քայլը շատ պարզ է: Ըստ էության, ես պարզապես օգտագործում եմ նույն ծածկագիրը, ինչ իմ $ wumpus- ը, բայց փոխարենը ՝ $ player փոփոխականով:
Քայլ 2: Նոր սենյակի ծածկագիր
Փոխեց ձեր ընդհանուր սենյակի ծածկագիրը, այնպես որ $ player- ի արժեքը ներկայիս սենյակն է: Այնուհետեւ համեմատեք $ wumpus- ը $ player- ի հետ `ներկայիս սենյակի փոխարեն:
Սա աննշան փոփոխություն է և ամբողջովին անհրաժեշտ չէ, բայց ես սիրում եմ իմ կոդը կազմակերպված պահել:
Քայլ 3. Փոփոխականից հղում ստեղծելը
Ի վերջո, ուզում եմ իմ մեկնարկային սենյակի հղումը փոխարինել այն հղումով, որը փոխվում է ՝ կախված $ player- ի արժեքից: Դա կարելի է անել Sugarcube- ի գործառույթով: Այդ մասին ավելին կարող եք կարդալ Sugarcube- ի փաստաթղթերի էջում:
Մեր հրամանից հետո առաջին տողը այն արտահայտությունն է, որը կհայտնվի մեր հատվածում: Երկրորդը հատվածի անունն է, որին մենք ցանկանում ենք կապել: Ես օգտագործում եմ «Hunt the Wumpus!» - ը: որպես իմ արտահայտություն, բայց մենք կարող ենք փոխարենը օգտագործել մեր փոփոխականը, եթե ցանկանում ենք, որ խաղացողը նախապես իմանա, թե ուր են գնում, այսպես.
Քայլ 4: Փորձարկում
Երբ ստուգում եք ձեր կոդը, դուք պետք է պարզեք, որ ձեր հղումը փոխարինվել է նախկինում գրած արտահայտությամբ: Սեղմելով դրա վրա ՝ դուք ձեր խաղի պատահական սենյակ եք տանում:
Unfortunatelyավոք, սա կարող է ձեզ ուղիղ ուղարկել Վումպուսի սենյակ: Այս պահին դա մեծ նշանակություն չունի, բայց իսկական խաղում դա ակնթարթային խաղ ավարտված կլիներ: Մենք պետք է դա շտկենք:
Քայլ 5: Ավելացրեք սենյակների ցուցակ
Նախ, մենք ստեղծելու ենք սենյակների ցուցակ ՝ սենյակների կառավարումն ավելի դյուրին դարձնելու համար: Հայտարարելով այս զանգվածը, մենք կարող ենք օգտագործել այն ՝ մեր $ player և $ wumpus արժեքները սահմանելու համար ՝ առանց ծածկագիրը կրկնելու: Այն նաև ունի մեկ այլ առավելություն, որը մենք հետագայում կքննարկենք:
Այս ծածկագրով փորձարկումը պետք է վարվի այնպես, ինչպես նախկինում էր:
Քայլ 6: Սենյակների վերացում
Ես ավելացրել եմ ծածկագրի մեկ տող նախկինում (ընդգծված է):
Sugarcube- ի զանգվածները ունեն ներկառուցված գործառույթ, որը թույլ է տալիս անուններից ջնջել տարրերը: Այս դեպքում, երբ մենք $ wumpus- ին սենյակ հատկացնենք, կարող ենք ջնջել այդ սենյակը մեր $ սենյակների ցանկից: Այս գործառույթը, սակայն, անորոշ է: Այն չի աշխատի, քանի դեռ գործառույթի ելքը չի նշանակվել կամ ինչ -որ կերպ օգտագործվել: Դա հոգալու համար ես ստեղծել եմ ժամանակավոր փոփոխական _temp:
Sugarcube- ում ժամանակավոր փոփոխականները մեկ դոլարի ($) փոխարեն սկսում են ընդգծել (_): Դրանք օգտակար են, քանի որ հատվածը գործարկելուց հետո ջնջվում են, այնպես որ կարիք չկա անհանգստանալու փոփոխականների անունների համընկնումից:
$ Player սենյակը նույնպես ջնջում եմ $ roomlist- ից, բնականաբար:
Քայլ 7: Փորձարկում
Թեև մենք կարող էինք գործարկել ծածկագիրն այնպես, ինչպես հիմա է, դա շատ մանրակրկիտ փորձություն չէր լինի: Եթե գործարկենք ծածկագիրը և պարզենք, որ $ player և $ wumpus- ը նշանակված են տարբեր սենյակներում, մենք չգիտենք `դա կոդն աշխատե՞լն է, թե՞ պատահականություն: Իհարկե, մենք կարող ենք բազմաթիվ անգամ գործարկել ծածկագիրը և ենթադրել, որ եթե այն երկուսին էլ չտրամադրի նույն սենյակը, որը երբեք չի տա, բայց դա հավերժ կտևի, և դա դեռ 100% հավաստիացում չէ, որ դա երբեք չի կարող տեղի ունենալ:
Փոխարենը, մեզ անհրաժեշտ է ստուգման միջոց:
Մեր ներածական հատվածի վերևում ես ավելացրել եմ երեք տող, որոնք թույլ կտան մեզ տեսնել մեր $ wumpus, $ player և $ roomlist փոփոխականների արժեքները: Քանի որ մենք ստեղծում ենք մեր ծածկագիրը, մենք գիտենք, որ $ wumpus սենյակը և $ player սենյակը պետք է հեռացվեն $ room roomlist- ից:
Երբ մենք գործարկում ենք այս կոդը, մենք կարող ենք ստուգել `համոզվելու, որ դա այդպես է:
Քայլ 8: Տարօրինակություններ շաքարավազի և առարկաների հետ
Sugarcube- ի առարկաները մի փոքր տարօրինակ են: Թույլ տվեք սա ցույց տալ:
Մինչ ես սկզբնապես կառուցում էի այս նախագիծը, ես ուզում էի իմ սենյակների ցուցակը պահել $ saveroom փոփոխականում, մինչև որ սկսեի ջնջել սենյակները դրանից: Ես մտածեցի, որ այն հետագայում օգտակար կլինի:
Երբ այս կոդից ինչ -որ տարօրինակ պահվածք ստացա, ես ներածության էջին ավելացրի ևս մեկ տող, որպեսզի թույլ տամ նայել իմ $ saveroom փոփոխականին (երկրորդ նկարը):
Ես ցնցվեցի ՝ նկատելով, որ $ roomlist- ից ջնջած տարրերը նույնպես ջնջվել են իմ պահված ցուցակից: Սա կարող եք տեսնել գործողության մեջ երրորդ նկարում:
Դա պայմանավորված է նրանով, որ երբ դուք պատճենում եք այսպիսի զանգված, իրականում դուք Twine- ին չեք ասում, որ պատճենեք զանգվածը, այլ Twine- ին ասում եք, որ այս երկու փոփոխականները նույն զանգվածն են: Երբ դուք ինչ -որ բան եք անում զանգվածի միջոցով ՝ օգտագործելով մեկ փոփոխական, այն փոխում է նույն զանգվածը, որին նայում է մյուս փոփոխականը:
Մենք կարող ենք դա շտկել clone () ֆունկցիայի միջոցով:
Քայլ 9. Clone () գործառույթը
Դուք կարող եք կարդալ կլոնի () գործառույթի մասին Sugarcube փաստաթղթերի էջում:
«Մակերեսային» պատճենն այն է, ինչ մենք անում էինք նախկինում: Ամբողջ զանգվածի ամբողջական պատճենը ստեղծելու փոխարեն այն պարզապես ենթադրում է, որ ձեր փոփոխականը աշխատում է նույն զանգվածի հետ: Մակերեսային պատճենի փոխարեն, clone- ը կատարում է «խորքային» պատճեն, որն իրեն պահում է այնպես, ինչպես դուք կսպասեիք: Theանգվածի յուրաքանչյուր տարր պատճենված է նոր զանգվածի մեջ և ամբողջովին առանձնացված է բնօրինակից:
Եթե փորձարկենք այս նոր ծածկագիրը, ապա կգտնենք, որ այն աշխատում է ինչպես և սպասվում էր:
Իհարկե, կապ չունի $ սենյակների ցուցակ պահել, թե ոչ: Իմ նախագծի նպատակների համար ես չեմ պատրաստվում: Այս ամենը պարզապես խորը և մակերեսային պատճենները ցուցադրելու համար էր:
Քայլ 10: Դա հիմա է:
Մենք ավելացրել ենք կոդը, որը թույլ է տալիս մեր խաղացողին սկսել պատահական սենյակում: Բացի այդ, մենք վերացրել ենք մի սխալ, որտեղ խաղացողը սկսում էր «Վումպուսի» հետ նույն սենյակում:
Մենք սովորեցինք, թե ինչպես ստեղծել փոփոխականներից հղումներ, և թե ինչպես է զանգվածների պատճենումը վերաբերվում Sugarcube- ին:
Ամեն ինչ արագանում է, բայց մենք դեռ նոր ենք սկսում:
Ուրախ որս:
Խորհուրդ ենք տալիս:
Arduino մեքենայի հետադարձ կայանման ահազանգման համակարգ - Քայլ առ քայլ: 4 քայլ
Arduino մեքենայի հետադարձ կայանման ահազանգման համակարգ | Քայլ առ քայլ. Այս նախագծում ես նախագծելու եմ մի պարզ Arduino մեքենայի հետադարձ կայանման սենսորային միացում ՝ օգտագործելով Arduino UNO և HC-SR04 ուլտրաձայնային տվիչ: Այս Arduino- ի վրա հիմնված Car Reverse ազդանշանային համակարգը կարող է օգտագործվել ինքնավար նավարկության, ռոբոտների ռանգի և այլ տեսականու համար
Քայլ առ քայլ համակարգչային շենք. 9 քայլ
Քայլ առ քայլ համակարգչի կառուցում. Պարագաներ. Սարքավորումներ. Մայրական համակարգիչ CPU coolerPSU (Էներգամատակարարման միավոր) Պահեստավորում (HDD/SSD) RAMGPU (պարտադիր չէ) Գործ CaseTools: Պտուտակահան ESD ապարանջան/matsthermal paste w/aplikator
Ընդհանուր սենյակներ Twine- ում Sugarcube- ով `11 քայլ
Ընդհանուր սենյակներ Twine- ում Sugarcube- ով. Բարև, բարև և բարի գալուստ Wumpus Hunt- ը Twain- ում Sugarcube- ով կառուցելու իմ ձեռնարկը: Twine- ը շատ պարզ գործիք է, որը նախատեսված է տեքստային արկածային խաղեր ստեղծելու համար: Իմ սիրելի փոքրիկ զարմիկը ընտրել է Twine- ի հետ խաղ պատրաստել իր ավագ նախագծի համար
Ձայնային թռիչք Arduino Uno- ի հետ Քայլ առ քայլ (8 քայլ) `8 քայլ
Ձայնային թռիչք Arduino Uno- ի հետ Քայլ առ քայլ (8 քայլ). Ուլտրաձայնային ձայնային փոխարկիչներ L298N Dc կանացի ադապտեր էներգիայի մատակարարում արական dc pin Arduino UNOBreadboard և անալոգային նավահանգիստներ ՝ կոդը փոխարկելու համար (C ++)
Ստեղծեք Banggood Affiliate (Referral) հղումներ ավելի հեշտ, քան երբևէ. 4 քայլ
Ստեղծեք Banggood Affiliate (Referral) հղումներ, քան երբևէ ավելի հեշտ. դուստր ձեռնարկը արգելվում է